27 return *(uint16_t *) item->
data;
34 return *(uint32_t *) item->
data;
41 return *(uint64_t *) item->
data;
67 *(uint16_t *) item->
data = value;
75 *(uint32_t *) item->
data = value;
82 *(uint64_t *) item->
data = value;
103 .metadata = {.int_metadata = {.width =
CBOR_INT_8}},
115 .metadata = {.int_metadata = {.width =
CBOR_INT_16}},
127 .metadata = {.int_metadata = {.width =
CBOR_INT_32}},
139 .metadata = {.int_metadata = {.width =
CBOR_INT_64}},
cbor_item_t * cbor_build_uint8(uint8_t value)
Constructs a new positive integer.
struct cbor_item_t cbor_item_t
The item handle.
cbor_item_t * cbor_build_negint64(uint64_t value)
Constructs a new negative integer.
cbor_item_t * cbor_new_int64()
Allocates new integer with 8B width.
uint64_t cbor_get_int(const cbor_item_t *item)
Extracts the integer value.
union cbor_item_metadata metadata
Discriminated by type.
void cbor_set_uint16(cbor_item_t *item, uint16_t value)
Assigns the integer value.
cbor_int_width cbor_int_get_width(const cbor_item_t *item)
Queries the integer width.
cbor_item_t * cbor_new_int8()
Allocates new integer with 1B width.
bool cbor_is_int(const cbor_item_t *item)
Is the item an integer, either positive or negative?
cbor_item_t * cbor_build_negint16(uint16_t value)
Constructs a new negative integer.
cbor_item_t * cbor_build_negint32(uint32_t value)
Constructs a new negative integer.
void cbor_set_uint8(cbor_item_t *item, uint8_t value)
Assigns the integer value.
cbor_type type
Major type discriminator.
uint32_t cbor_get_uint32(const cbor_item_t *item)
Extracts the integer value.
void cbor_mark_negint(cbor_item_t *item)
Marks the integer item as a negative integer.
size_t refcount
Reference count - initialize to 0.
cbor_item_t * cbor_build_uint32(uint32_t value)
Constructs a new positive integer.
uint16_t cbor_get_uint16(const cbor_item_t *item)
Extracts the integer value.
cbor_int_width
Possible widths of CBOR_TYPE_UINT items.
void cbor_set_uint32(cbor_item_t *item, uint32_t value)
Assigns the integer value.
cbor_item_t * cbor_build_uint16(uint16_t value)
Constructs a new positive integer.
uint8_t cbor_get_uint8(const cbor_item_t *item)
Extracts the integer value.
uint64_t cbor_get_uint64(const cbor_item_t *item)
Extracts the integer value.
void cbor_mark_uint(cbor_item_t *item)
Marks the integer item as a positive integer.
cbor_item_t * cbor_build_uint64(uint64_t value)
Constructs a new positive integer.
unsigned char * data
Raw data block - interpretation depends on metadata.
cbor_item_t * cbor_new_int32()
Allocates new integer with 4B width.
cbor_item_t * cbor_build_negint8(uint8_t value)
Constructs a new negative integer.
void cbor_set_uint64(cbor_item_t *item, uint64_t value)
Assigns the integer value.
cbor_item_t * cbor_new_int16()
Allocates new integer with 2B width.