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