Lines Matching refs:item

11 size_t cbor_map_size(const cbor_item_t *item) {
12 CBOR_ASSERT(cbor_isa_map(item));
13 return item->metadata.map_metadata.end_ptr;
16 size_t cbor_map_allocated(const cbor_item_t *item) {
17 CBOR_ASSERT(cbor_isa_map(item));
18 return item->metadata.map_metadata.allocated;
22 cbor_item_t *item = _cbor_malloc(sizeof(cbor_item_t));
23 _CBOR_NOTNULL(item);
25 *item = (cbor_item_t){
32 _CBOR_DEPENDENT_NOTNULL(item, item->data);
34 return item;
38 cbor_item_t *item = _cbor_malloc(sizeof(cbor_item_t));
39 _CBOR_NOTNULL(item);
41 *item = (cbor_item_t){
49 return item;
52 bool _cbor_map_add_key(cbor_item_t *item, cbor_item_t *key) {
53 CBOR_ASSERT(cbor_isa_map(item));
55 (struct _cbor_map_metadata *)&item->metadata;
56 if (cbor_map_is_definite(item)) {
57 struct cbor_pair *data = cbor_map_handle(item);
78 item->data, sizeof(struct cbor_pair), new_allocation);
84 item->data = new_data;
87 struct cbor_pair *data = cbor_map_handle(item);
95 bool _cbor_map_add_value(cbor_item_t *item, cbor_item_t *value) {
96 CBOR_ASSERT(cbor_isa_map(item));
98 cbor_map_handle(item)[
101 item->metadata.map_metadata.end_ptr - 1]
106 bool cbor_map_add(cbor_item_t *item, struct cbor_pair pair) {
107 CBOR_ASSERT(cbor_isa_map(item));
108 if (!_cbor_map_add_key(item, pair.key)) return false;
109 return _cbor_map_add_value(item, pair.value);
112 bool cbor_map_is_definite(const cbor_item_t *item) {
113 CBOR_ASSERT(cbor_isa_map(item));
114 return item->metadata.map_metadata.type == _CBOR_METADATA_DEFINITE;
117 bool cbor_map_is_indefinite(const cbor_item_t *item) {
118 return !cbor_map_is_definite(item);
121 struct cbor_pair *cbor_map_handle(const cbor_item_t *item) {
122 CBOR_ASSERT(cbor_isa_map(item));
123 return (struct cbor_pair *)item->data;