Type 4 – Arrays¶
CBOR arrays, just like byte strings and strings, can be encoded either as definite, or as indefinite.
Corresponding cbor_type |
CBOR_TYPE_ARRAY |
Number of allocations (definite) | Two plus any manipulations with the data |
Number of allocations (indefinite) | Two plus logarithmically many reallocations relative to additions |
Storage requirements (definite) | (sizeof(cbor_item_t) + 1) * size |
Storage requirements (indefinite) | <= sizeof(cbor_item_t) + sizeof(cbor_item_t) * size * BUFFER_GROWTH |
Examples¶
0x9f Start indefinite array
0x01 Unsigned integer 1
0xff "Break" control token
0x9f Start array, 1B length follows
0x20 Unsigned integer 32
... 32 items follow
Streaming indefinite arrays¶
Please refer to Streaming & indefinite items.
Getting metadata¶
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Reading data¶
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Creating new items¶
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Modifying items¶
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml
Warning
doxygenfunction: Cannot find file: /tmp/B.5qzRfz/BUILD/libcbor-0.5.0/doc/build/doxygen/xml/index.xml