103 switch (item->
type) {
141 for (
size_t i = 0; i < size; i++)
142 if (handle[i] != NULL)
151 if (handle->
value != NULL)
bool cbor_bytestring_is_definite(const cbor_item_t *item)
Is the byte string definite?
union cbor_item_metadata metadata
Discriminated by type.
void cbor_intermediate_decref(cbor_item_t *item)
Decreases the reference count by one, deallocating the item if needed.
bool cbor_isa_negint(const cbor_item_t *item)
Does the item have the appropriate major type?
void cbor_decref(cbor_item_t **item_ref)
Decreases the reference count by one, deallocating the item if needed.
bool cbor_isa_string(const cbor_item_t *item)
Does the item have the appropriate major type?
size_t cbor_bytestring_chunk_count(const cbor_item_t *item)
Get the number of chunks this string consist of.
cbor_item_t ** cbor_string_chunks_handle(const cbor_item_t *item)
Get the handle to the array of chunks.
bool cbor_is_int(const cbor_item_t *item)
Is the item an integer, either positive or negative?
bool cbor_isa_bytestring(const cbor_item_t *item)
Does the item have the appropriate major type?
cbor_item_t ** cbor_bytestring_chunks_handle(const cbor_item_t *item)
Get the handle to the array of chunks.
size_t cbor_refcount(const cbor_item_t *item)
Get the reference count.
cbor_type type
Major type discriminator.
7 - decimals and special values (true, false, nil, ...)
Simple pair of items for use in maps.
size_t refcount
Reference count - initialize to 0.
bool cbor_is_null(const cbor_item_t *item)
Does this item represent null
size_t cbor_string_chunk_count(const cbor_item_t *item)
Get the number of chunks this string consist of.
size_t cbor_array_size(const cbor_item_t *item)
Get the number of members.
bool cbor_is_float(const cbor_item_t *item)
Is the item an a floating point number?
cbor_item_t * cbor_incref(cbor_item_t *item)
Increases the reference count by one.
uint8_t cbor_ctrl_value(const cbor_item_t *item)
Reads the control value.
Defines cbor_item_t::data structure for indefinite strings and bytestrings.
bool cbor_isa_float_ctrl(const cbor_item_t *item)
Does the item have the appropriate major type?
bool cbor_isa_array(const cbor_item_t *item)
Does the item have the appropriate major type?
bool cbor_isa_map(const cbor_item_t *item)
Does the item have the appropriate major type?
cbor_item_t * cbor_move(cbor_item_t *item)
Provides CPP-like move construct.
bool cbor_isa_uint(const cbor_item_t *item)
Does the item have the appropriate major type?
bool cbor_is_bool(const cbor_item_t *item)
Is the item an a boolean?
bool cbor_isa_tag(const cbor_item_t *item)
Does the item have the appropriate major type?
cbor_type
Specifies the Major type of cbor_item_t.
bool cbor_is_undef(const cbor_item_t *item)
Does this item represent undefined
cbor_type cbor_typeof(const cbor_item_t *item)
Get the type of the item.
bool cbor_string_is_definite(const cbor_item_t *item)
Is the string definite?
unsigned char * data
Raw data block - interpretation depends on metadata.
bool cbor_float_ctrl_is_ctrl(const cbor_item_t *item)
Is this a ctrl value?
struct cbor_pair * cbor_map_handle(const cbor_item_t *item)
Get the pairs storage.
cbor_item_t ** cbor_array_handle(const cbor_item_t *item)
Get the array contents.