return struct.pack(fmt, tags.LIST, list_tag, len(payload)) + payload
+def _serialize_object(to):
+ raise Exception('Not implemented')
+
_TAGS_TO_SERIALIZERS = {
tags.NULL: _make_tag_only_serializer(tags.NULL, None),
tags.TRUE: _make_tag_only_serializer(tags.TRUE, True),
tags.UTF32: _make_string_serializer(lambda s: s.encode('utf-32')),
tags.TUPLE: _serialize_tuple,
tags.LIST: _serialize_list,
+ tags.OBJECT: _serialize_object,
}
def serialize(to):
# TODO Return tags = (tags.LIST, list_tag) to function like a generic type
return bytes_read, tags.TaggedObject(tag = tags.LIST, instance = instance)
+def _deserialize_object(b):
+ raise Exception('Not implemented')
+
_TAGS_TO_PARSERS = {
tags.NULL: _make_tag_only_parser(tags.NULL, None),
tags.TRUE: _make_tag_only_parser(tags.TRUE, True),
tags.UTF32: _make_string_deserializer(tags.UTF32, lambda b: b.decode('utf-32')),
tags.TUPLE: _deserialize_tuple,
tags.LIST: _deserialize_list,
+ tags.OBJECT: _deserialize_object,
}
def _deserialize_partial(b):