Dictionaries with variable length keys require a framing offset. The SerializeMap implementation already handles this, the manual serialization of dict entries used by Value does not. We now call directly into SerializeMap when serializing Value to align these serializations.
Unfortunately this requires adding two new methods to Value, similar to serialize_value_as_seq_element et al. To balance it out, we can remove DictEntry.
Dictionaries with variable length keys require a framing offset. The SerializeMap implementation already handles this, the manual serialization of dict entries used by Value does not. We now call directly into SerializeMap when serializing Value to align these serializations.
Unfortunately this requires adding two new methods to Value, similar to
serialize_value_as_seq_element
et al. To balance it out, we can removeDictEntry
.Closes #868