CBOR¶
This module define functions to serialize and deserialize objects to and from CBOR format. The serialization and deserialization of objects is performed using a wrapped version of the awesome and lighting fast libcbor
loads(data)
Returns a Python object represented by the byte sequence data
. For CBOR specific structures such as tags
and undefined
values, the function returns instances of the Tag()
and Undefined()
classes.
Raises ValueError
when data
contains bad or unsupported CBOR.
dumps(obj)
Returns a bytes object containing the CBOR representation of obj
. If a Python object is not serializable to CBOR, it is serialized to Undefined()
. The function always produces definite major types (bytestrings, string, arrays and maps). To generate CBOR specific structures such as tags
and undefined
values, pass as argument instances of the Tag()
and Undefined()
classes.
Raises RuntimeError
when obj
can’t be serialized.
Tag class¶
Tag(tag, value)
Create a Tag instance. Tag instances have two attributes, tag
and value
that can be manually changed if needed. tag
must be an integer while value
can be any CBOR serializable python object. An instance of this class is returned during deserialization if a tag is found.
Undefined class¶
Undefined()
Create an Undefined instance. Since Python has no undefined values, this class is used to both serialize and deserialize this kind of data.