Types of items

Every cbor_item_t has a cbor_type associated with it - these constants correspond to the types specified by the CBOR standard:

enum type cbor_type

Specifies the Major type of cbor_item_t.

Values:

0 - positive integers

1 - negative integers

2 - byte strings

3 - strings

4 - arrays

5 - maps

6 - tags

7 - decimals and special values (true, false, nil, ...)

To find out the type of an item, one can use

Warning

doxygenfunction: Cannot find function “cbor_typeof” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Please note the distinction between functions like cbor_isa_uint() and cbor_is_int(). The following functions work solely with the major type value.

Binary queries

Alternatively, there are functions to query each particular type.

Warning

Passing an invalid cbor_item_t reference to any of these functions results in undefined behavior.

Warning

doxygenfunction: Cannot find function “cbor_isa_uint” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_isa_negint” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_isa_bytestring” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_isa_string” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_isa_array” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_isa_map” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_isa_tag” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_isa_float_ctrl” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Logical queries

These functions provide information about the item type from a more high-level perspective

Warning

doxygenfunction: Cannot find function “cbor_is_int” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_is_float” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_is_bool” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_is_null” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml

Warning

doxygenfunction: Cannot find function “cbor_is_undef” in doxygen xml output for project “libcbor” from directory: ../build/doxygen/xml