Skip to content

Implement map data type. - #129

Open
redstar wants to merge 1 commit into
msoucy:masterfrom
redstar:mapfield
Open

Implement map data type.#129
redstar wants to merge 1 commit into
msoucy:masterfrom
redstar:mapfield

Conversation

@redstar

@redstar redstar commented Aug 27, 2017

Copy link
Copy Markdown
Contributor

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

redstar commented Aug 27, 2017

Copy link
Copy Markdown
Contributor Author

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

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.
@msoucy

msoucy commented May 31, 2019

Copy link
Copy Markdown
Owner

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants