libcbor  0.5.0
libcbor is a C library for parsing and generating CBOR, the general-purpose schema-less binary data format.
arrays.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2014-2017 Pavel Kalvoda <me@pavelkalvoda.com>
3  *
4  * libcbor is free software; you can redistribute it and/or modify
5  * it under the terms of the MIT license. See LICENSE for details.
6  */
7 
8 #ifndef LIBCBOR_ARRAYS_H
9 #define LIBCBOR_ARRAYS_H
10 
11 #include "cbor/common.h"
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
22 size_t cbor_array_size(const cbor_item_t * item);
23 
29 size_t cbor_array_allocated(const cbor_item_t * item);
30 
37 cbor_item_t * cbor_array_get(const cbor_item_t * item, size_t index);
38 
48 bool cbor_array_set(cbor_item_t * item, size_t index, cbor_item_t * value);
49 
59 bool cbor_array_replace(cbor_item_t * item, size_t index, cbor_item_t * value);
60 
66 bool cbor_array_is_definite(const cbor_item_t * item);
67 
73 bool cbor_array_is_indefinite(const cbor_item_t * item);
74 
83 
90 
96 
106 bool cbor_array_push(cbor_item_t * array, cbor_item_t * pushee);
107 
108 #ifdef __cplusplus
109 }
110 #endif
111 
112 #endif //LIBCBOR_ARRAYS_H
cbor_item_t * cbor_new_definite_array(size_t size)
Create new definite array.
Definition: arrays.c:106
bool cbor_array_replace(cbor_item_t *item, size_t index, cbor_item_t *value)
Replace item at an index.
Definition: arrays.c:42
size_t cbor_array_allocated(const cbor_item_t *item)
Get the size of the allocated storage.
Definition: arrays.c:18
cbor_item_t * cbor_new_indefinite_array()
Create new indefinite array.
Definition: arrays.c:138
cbor_item_t * cbor_array_get(const cbor_item_t *item, size_t index)
Get item by index.
Definition: arrays.c:25
bool cbor_array_is_indefinite(const cbor_item_t *item)
Is the array indefinite?
Definition: arrays.c:94
size_t cbor_array_size(const cbor_item_t *item)
Get the number of members.
Definition: arrays.c:12
bool cbor_array_is_definite(const cbor_item_t *item)
Is the array definite?
Definition: arrays.c:88
bool cbor_array_push(cbor_item_t *array, cbor_item_t *pushee)
Append to the end.
Definition: arrays.c:52
bool cbor_array_set(cbor_item_t *item, size_t index, cbor_item_t *value)
Set item by index.
Definition: arrays.c:30
The item handle.
Definition: data.h:149
cbor_item_t ** cbor_array_handle(const cbor_item_t *item)
Get the array contents.
Definition: arrays.c:100