msoucy / dproto

D Protocol Buffer mixins to create structures at compile time
Boost Software License 1.0
37 stars 16 forks source link

Implement map data type. #129

Open redstar opened 7 years ago

redstar commented 7 years ago

The map data type has a special proto syntax. The serialization of

map<key_type, value_type> map_field = N;

is backward compatible to

message MapFieldEntry {
  key_type key = 1;
  value_type value = 2;
}

repeated MapFieldEntry map_field = N;

The option [packed = true] is not allowed on map fields.

redstar commented 7 years ago

I still work on the serialization. My question is if the general design is welcomed or if there are better ideas.

msoucy commented 5 years ago

I have been away from dlang for a while (basically since graduating college), but I took a look at your design and it seems like a good starting point. If you're still open to developing this, I can take a look once serialization is implemented.