1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> 5 <meta http-equiv="X-UA-Compatible" content="IE=9"/> 6 <meta name="generator" content="Doxygen 1.8.12"/> 7 <meta name="viewport" content="width=device-width, initial-scale=1"/> 8 <title>libcbor: src/cbor/arrays.c File Reference</title> 9 <link href="tabs.css" rel="stylesheet" type="text/css"/> 10 <script type="text/javascript" src="jquery.js"></script> 11 <script type="text/javascript" src="dynsections.js"></script> 12 <link href="search/search.css" rel="stylesheet" type="text/css"/> 13 <script type="text/javascript" src="search/searchdata.js"></script> 14 <script type="text/javascript" src="search/search.js"></script> 15 <link href="doxygen.css" rel="stylesheet" type="text/css" /> 16 <link href="customdoxygen.css" rel="stylesheet" type="text/css"/> 17 </head> 18 <body> 19 <div id="top"><!-- do not remove this div, it is closed by doxygen! --> 20 <div id="titlearea"> 21 <table cellspacing="0" cellpadding="0"> 22 <tbody> 23 <tr style="height: 56px;"> 24 <td id="projectalign" style="padding-left: 0.5em;"> 25 <div id="projectname">libcbor 26  <span id="projectnumber">0.5.0</span> 27 </div> 28 <div id="projectbrief">libcbor is a C library for parsing and generating CBOR, the general-purpose schema-less binary data format.</div> 29 </td> 30 </tr> 31 </tbody> 32 </table> 33 </div> 34 <!-- end header part --> 35 <!-- Generated by Doxygen 1.8.12 --> 36 <script type="text/javascript"> 37 var searchBox = new SearchBox("searchBox", "search",false,'Search'); 38 </script> 39 <script type="text/javascript" src="menudata.js"></script> 40 <script type="text/javascript" src="menu.js"></script> 41 <script type="text/javascript"> 42 $(function() { 43 initMenu('',true,false,'search.php','Search'); 44 $(document).ready(function() { init_search(); }); 45 }); 46 </script> 47 <div id="main-nav"></div> 48 <!-- window showing the filter options --> 49 <div id="MSearchSelectWindow" 50 onmouseover="return searchBox.OnSearchSelectShow()" 51 onmouseout="return searchBox.OnSearchSelectHide()" 52 onkeydown="return searchBox.OnSearchSelectKey(event)"> 53 </div> 54 55 <!-- iframe showing the search results (closed by default) --> 56 <div id="MSearchResultsWindow"> 57 <iframe src="javascript:void(0)" frameborder="0" 58 name="MSearchResults" id="MSearchResults"> 59 </iframe> 60 </div> 61 62 <div id="nav-path" class="navpath"> 63 <ul> 64 <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cb565ba51d82ea933604984cbab6233d.html">cbor</a></li> </ul> 65 </div> 66 </div><!-- top --> 67 <div class="header"> 68 <div class="summary"> 69 <a href="#func-members">Functions</a> </div> 70 <div class="headertitle"> 71 <div class="title">arrays.c File Reference</div> </div> 72 </div><!--header--> 73 <div class="contents"> 74 <div class="textblock"><code>#include <string.h></code><br /> 75 <code>#include "<a class="el" href="arrays_8h_source.html">arrays.h</a>"</code><br /> 76 <code>#include "<a class="el" href="memory__utils_8h_source.html">internal/memory_utils.h</a>"</code><br /> 77 </div> 78 <p><a href="arrays_8c_source.html">Go to the source code of this file.</a></p> 79 <table class="memberdecls"> 80 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> 81 Functions</h2></td></tr> 82 <tr class="memitem:a4f634a9a4bc834e4ea6ac43e94d51f84"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#a4f634a9a4bc834e4ea6ac43e94d51f84">cbor_array_size</a> (const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> *item)</td></tr> 83 <tr class="memdesc:a4f634a9a4bc834e4ea6ac43e94d51f84"><td class="mdescLeft"> </td><td class="mdescRight">Get the number of members. <a href="#a4f634a9a4bc834e4ea6ac43e94d51f84">More...</a><br /></td></tr> 84 <tr class="separator:a4f634a9a4bc834e4ea6ac43e94d51f84"><td class="memSeparator" colspan="2"> </td></tr> 85 <tr class="memitem:a5da97cca271f81f55809c39fad6078b0"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#a5da97cca271f81f55809c39fad6078b0">cbor_array_allocated</a> (const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> *item)</td></tr> 86 <tr class="memdesc:a5da97cca271f81f55809c39fad6078b0"><td class="mdescLeft"> </td><td class="mdescRight">Get the size of the allocated storage. <a href="#a5da97cca271f81f55809c39fad6078b0">More...</a><br /></td></tr> 87 <tr class="separator:a5da97cca271f81f55809c39fad6078b0"><td class="memSeparator" colspan="2"> </td></tr> 88 <tr class="memitem:a1573139e26cf5b5acc4b0ed861291069"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#a1573139e26cf5b5acc4b0ed861291069">cbor_array_get</a> (const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> *item, size_t index)</td></tr> 89 <tr class="memdesc:a1573139e26cf5b5acc4b0ed861291069"><td class="mdescLeft"> </td><td class="mdescRight">Get item by index. <a href="#a1573139e26cf5b5acc4b0ed861291069">More...</a><br /></td></tr> 90 <tr class="separator:a1573139e26cf5b5acc4b0ed861291069"><td class="memSeparator" colspan="2"> </td></tr> 91 <tr class="memitem:a382cc2dc480ebb9c7951eb3235be89b4"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#a382cc2dc480ebb9c7951eb3235be89b4">cbor_array_set</a> (<a class="el" href="structcbor__item__t.html">cbor_item_t</a> *item, size_t index, <a class="el" href="structcbor__item__t.html">cbor_item_t</a> *value)</td></tr> 92 <tr class="memdesc:a382cc2dc480ebb9c7951eb3235be89b4"><td class="mdescLeft"> </td><td class="mdescRight">Set item by index. <a href="#a382cc2dc480ebb9c7951eb3235be89b4">More...</a><br /></td></tr> 93 <tr class="separator:a382cc2dc480ebb9c7951eb3235be89b4"><td class="memSeparator" colspan="2"> </td></tr> 94 <tr class="memitem:a44020515090bbbe91249aff0016ab8e5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#a44020515090bbbe91249aff0016ab8e5">cbor_array_replace</a> (<a class="el" href="structcbor__item__t.html">cbor_item_t</a> *item, size_t index, <a class="el" href="structcbor__item__t.html">cbor_item_t</a> *value)</td></tr> 95 <tr class="memdesc:a44020515090bbbe91249aff0016ab8e5"><td class="mdescLeft"> </td><td class="mdescRight">Replace item at an index. <a href="#a44020515090bbbe91249aff0016ab8e5">More...</a><br /></td></tr> 96 <tr class="separator:a44020515090bbbe91249aff0016ab8e5"><td class="memSeparator" colspan="2"> </td></tr> 97 <tr class="memitem:abb1c1c9731a2195857dc471f2a6f60f5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#abb1c1c9731a2195857dc471f2a6f60f5">cbor_array_push</a> (<a class="el" href="structcbor__item__t.html">cbor_item_t</a> *array, <a class="el" href="structcbor__item__t.html">cbor_item_t</a> *pushee)</td></tr> 98 <tr class="memdesc:abb1c1c9731a2195857dc471f2a6f60f5"><td class="mdescLeft"> </td><td class="mdescRight">Append to the end. <a href="#abb1c1c9731a2195857dc471f2a6f60f5">More...</a><br /></td></tr> 99 <tr class="separator:abb1c1c9731a2195857dc471f2a6f60f5"><td class="memSeparator" colspan="2"> </td></tr> 100 <tr class="memitem:ac2f1480c546a0268e8b046b365e58599"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#ac2f1480c546a0268e8b046b365e58599">cbor_array_is_definite</a> (const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> *item)</td></tr> 101 <tr class="memdesc:ac2f1480c546a0268e8b046b365e58599"><td class="mdescLeft"> </td><td class="mdescRight">Is the array definite? <a href="#ac2f1480c546a0268e8b046b365e58599">More...</a><br /></td></tr> 102 <tr class="separator:ac2f1480c546a0268e8b046b365e58599"><td class="memSeparator" colspan="2"> </td></tr> 103 <tr class="memitem:a291a9f3ff12a2e2c58b2ca8b00280d40"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#a291a9f3ff12a2e2c58b2ca8b00280d40">cbor_array_is_indefinite</a> (const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> *item)</td></tr> 104 <tr class="memdesc:a291a9f3ff12a2e2c58b2ca8b00280d40"><td class="mdescLeft"> </td><td class="mdescRight">Is the array indefinite? <a href="#a291a9f3ff12a2e2c58b2ca8b00280d40">More...</a><br /></td></tr> 105 <tr class="separator:a291a9f3ff12a2e2c58b2ca8b00280d40"><td class="memSeparator" colspan="2"> </td></tr> 106 <tr class="memitem:a8dd01f4a46f162fa4f06b7df7428128e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> ** </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#a8dd01f4a46f162fa4f06b7df7428128e">cbor_array_handle</a> (const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> *item)</td></tr> 107 <tr class="memdesc:a8dd01f4a46f162fa4f06b7df7428128e"><td class="mdescLeft"> </td><td class="mdescRight">Get the array contents. <a href="#a8dd01f4a46f162fa4f06b7df7428128e">More...</a><br /></td></tr> 108 <tr class="separator:a8dd01f4a46f162fa4f06b7df7428128e"><td class="memSeparator" colspan="2"> </td></tr> 109 <tr class="memitem:a93d7c18019000d5e206a81a4cca70631"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#a93d7c18019000d5e206a81a4cca70631">cbor_new_definite_array</a> (size_t size)</td></tr> 110 <tr class="memdesc:a93d7c18019000d5e206a81a4cca70631"><td class="mdescLeft"> </td><td class="mdescRight">Create new definite array. <a href="#a93d7c18019000d5e206a81a4cca70631">More...</a><br /></td></tr> 111 <tr class="separator:a93d7c18019000d5e206a81a4cca70631"><td class="memSeparator" colspan="2"> </td></tr> 112 <tr class="memitem:aaec916ccc6f19782b6aef5ec1da2cc26"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="arrays_8c.html#aaec916ccc6f19782b6aef5ec1da2cc26">cbor_new_indefinite_array</a> ()</td></tr> 113 <tr class="memdesc:aaec916ccc6f19782b6aef5ec1da2cc26"><td class="mdescLeft"> </td><td class="mdescRight">Create new indefinite array. <a href="#aaec916ccc6f19782b6aef5ec1da2cc26">More...</a><br /></td></tr> 114 <tr class="separator:aaec916ccc6f19782b6aef5ec1da2cc26"><td class="memSeparator" colspan="2"> </td></tr> 115 </table> 116 <h2 class="groupheader">Function Documentation</h2> 117 <a id="a5da97cca271f81f55809c39fad6078b0"></a> 118 <h2 class="memtitle"><span class="permalink"><a href="#a5da97cca271f81f55809c39fad6078b0">§ </a></span>cbor_array_allocated()</h2> 119 120 <div class="memitem"> 121 <div class="memproto"> 122 <table class="memname"> 123 <tr> 124 <td class="memname">size_t cbor_array_allocated </td> 125 <td>(</td> 126 <td class="paramtype">const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 127 <td class="paramname"><em>item</em></td><td>)</td> 128 <td></td> 129 </tr> 130 </table> 131 </div><div class="memdoc"> 132 133 <p>Get the size of the allocated storage. </p> 134 <dl class="params"><dt>Parameters</dt><dd> 135 <table class="params"> 136 <tr><td class="paramname">item[borrow]</td><td>An array </td></tr> 137 </table> 138 </dd> 139 </dl> 140 <dl class="section return"><dt>Returns</dt><dd>The size of the allocated storage (number of items) </dd></dl> 141 142 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00018">18</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 143 144 </div> 145 </div> 146 <a id="a1573139e26cf5b5acc4b0ed861291069"></a> 147 <h2 class="memtitle"><span class="permalink"><a href="#a1573139e26cf5b5acc4b0ed861291069">§ </a></span>cbor_array_get()</h2> 148 149 <div class="memitem"> 150 <div class="memproto"> 151 <table class="memname"> 152 <tr> 153 <td class="memname"><a class="el" href="structcbor__item__t.html">cbor_item_t</a>* cbor_array_get </td> 154 <td>(</td> 155 <td class="paramtype">const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 156 <td class="paramname"><em>item</em>, </td> 157 </tr> 158 <tr> 159 <td class="paramkey"></td> 160 <td></td> 161 <td class="paramtype">size_t </td> 162 <td class="paramname"><em>index</em> </td> 163 </tr> 164 <tr> 165 <td></td> 166 <td>)</td> 167 <td></td><td></td> 168 </tr> 169 </table> 170 </div><div class="memdoc"> 171 172 <p>Get item by index. </p> 173 <dl class="params"><dt>Parameters</dt><dd> 174 <table class="params"> 175 <tr><td class="paramname">item[borrow]</td><td>An array </td></tr> 176 <tr><td class="paramname">index</td><td>The index </td></tr> 177 </table> 178 </dd> 179 </dl> 180 <dl class="section return"><dt>Returns</dt><dd><b>incref</b> The item, or <code>NULL</code> in case of boundary violation </dd></dl> 181 182 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00025">25</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 183 184 </div> 185 </div> 186 <a id="a8dd01f4a46f162fa4f06b7df7428128e"></a> 187 <h2 class="memtitle"><span class="permalink"><a href="#a8dd01f4a46f162fa4f06b7df7428128e">§ </a></span>cbor_array_handle()</h2> 188 189 <div class="memitem"> 190 <div class="memproto"> 191 <table class="memname"> 192 <tr> 193 <td class="memname"><a class="el" href="structcbor__item__t.html">cbor_item_t</a>** cbor_array_handle </td> 194 <td>(</td> 195 <td class="paramtype">const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 196 <td class="paramname"><em>item</em></td><td>)</td> 197 <td></td> 198 </tr> 199 </table> 200 </div><div class="memdoc"> 201 202 <p>Get the array contents. </p> 203 <p>The items may be reordered and modified as long as references remain consistent.</p> 204 <dl class="params"><dt>Parameters</dt><dd> 205 <table class="params"> 206 <tr><td class="paramname">item[borrow]</td><td>An array </td></tr> 207 </table> 208 </dd> 209 </dl> 210 <dl class="section return"><dt>Returns</dt><dd><a class="el" href="arrays_8h.html#a4f634a9a4bc834e4ea6ac43e94d51f84" title="Get the number of members. ">cbor_array_size</a> items </dd></dl> 211 212 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00100">100</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 213 214 </div> 215 </div> 216 <a id="ac2f1480c546a0268e8b046b365e58599"></a> 217 <h2 class="memtitle"><span class="permalink"><a href="#ac2f1480c546a0268e8b046b365e58599">§ </a></span>cbor_array_is_definite()</h2> 218 219 <div class="memitem"> 220 <div class="memproto"> 221 <table class="memname"> 222 <tr> 223 <td class="memname">bool cbor_array_is_definite </td> 224 <td>(</td> 225 <td class="paramtype">const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 226 <td class="paramname"><em>item</em></td><td>)</td> 227 <td></td> 228 </tr> 229 </table> 230 </div><div class="memdoc"> 231 232 <p>Is the array definite? </p> 233 <dl class="params"><dt>Parameters</dt><dd> 234 <table class="params"> 235 <tr><td class="paramname">item[borrow]</td><td>An array </td></tr> 236 </table> 237 </dd> 238 </dl> 239 <dl class="section return"><dt>Returns</dt><dd>Is the array definite? </dd></dl> 240 241 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00088">88</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 242 243 </div> 244 </div> 245 <a id="a291a9f3ff12a2e2c58b2ca8b00280d40"></a> 246 <h2 class="memtitle"><span class="permalink"><a href="#a291a9f3ff12a2e2c58b2ca8b00280d40">§ </a></span>cbor_array_is_indefinite()</h2> 247 248 <div class="memitem"> 249 <div class="memproto"> 250 <table class="memname"> 251 <tr> 252 <td class="memname">bool cbor_array_is_indefinite </td> 253 <td>(</td> 254 <td class="paramtype">const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 255 <td class="paramname"><em>item</em></td><td>)</td> 256 <td></td> 257 </tr> 258 </table> 259 </div><div class="memdoc"> 260 261 <p>Is the array indefinite? </p> 262 <dl class="params"><dt>Parameters</dt><dd> 263 <table class="params"> 264 <tr><td class="paramname">item[borrow]</td><td>An array </td></tr> 265 </table> 266 </dd> 267 </dl> 268 <dl class="section return"><dt>Returns</dt><dd>Is the array indefinite? </dd></dl> 269 270 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00094">94</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 271 272 </div> 273 </div> 274 <a id="abb1c1c9731a2195857dc471f2a6f60f5"></a> 275 <h2 class="memtitle"><span class="permalink"><a href="#abb1c1c9731a2195857dc471f2a6f60f5">§ </a></span>cbor_array_push()</h2> 276 277 <div class="memitem"> 278 <div class="memproto"> 279 <table class="memname"> 280 <tr> 281 <td class="memname">bool cbor_array_push </td> 282 <td>(</td> 283 <td class="paramtype"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 284 <td class="paramname"><em>array</em>, </td> 285 </tr> 286 <tr> 287 <td class="paramkey"></td> 288 <td></td> 289 <td class="paramtype"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 290 <td class="paramname"><em>pushee</em> </td> 291 </tr> 292 <tr> 293 <td></td> 294 <td>)</td> 295 <td></td><td></td> 296 </tr> 297 </table> 298 </div><div class="memdoc"> 299 300 <p>Append to the end. </p> 301 <p>For indefinite items, storage may be realloacted. For definite items, only the preallocated capacity is available.</p> 302 <dl class="params"><dt>Parameters</dt><dd> 303 <table class="params"> 304 <tr><td class="paramname">array[borrow]</td><td>An array </td></tr> 305 <tr><td class="paramname">pushee[incref]</td><td>The item to push </td></tr> 306 </table> 307 </dd> 308 </dl> 309 <dl class="section return"><dt>Returns</dt><dd>true on success, false on failure </dd></dl> 310 311 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00052">52</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 312 313 </div> 314 </div> 315 <a id="a44020515090bbbe91249aff0016ab8e5"></a> 316 <h2 class="memtitle"><span class="permalink"><a href="#a44020515090bbbe91249aff0016ab8e5">§ </a></span>cbor_array_replace()</h2> 317 318 <div class="memitem"> 319 <div class="memproto"> 320 <table class="memname"> 321 <tr> 322 <td class="memname">bool cbor_array_replace </td> 323 <td>(</td> 324 <td class="paramtype"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 325 <td class="paramname"><em>item</em>, </td> 326 </tr> 327 <tr> 328 <td class="paramkey"></td> 329 <td></td> 330 <td class="paramtype">size_t </td> 331 <td class="paramname"><em>index</em>, </td> 332 </tr> 333 <tr> 334 <td class="paramkey"></td> 335 <td></td> 336 <td class="paramtype"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 337 <td class="paramname"><em>value</em> </td> 338 </tr> 339 <tr> 340 <td></td> 341 <td>)</td> 342 <td></td><td></td> 343 </tr> 344 </table> 345 </div><div class="memdoc"> 346 347 <p>Replace item at an index. </p> 348 <p>The item being replace will be <a class="el" href="common_8h.html#aa10ebec46eddc9312ec46a0898b5d196" title="Decreases the reference count by one, deallocating the item if needed. ">cbor_decref</a> 'ed.</p> 349 <dl class="params"><dt>Parameters</dt><dd> 350 <table class="params"> 351 <tr><td class="paramname">item[borrow]</td><td>An array </td></tr> 352 <tr><td class="paramname">value[incref]</td><td>The item to assign </td></tr> 353 <tr><td class="paramname">index</td><td>The index, first item is 0. </td></tr> 354 </table> 355 </dd> 356 </dl> 357 <dl class="section return"><dt>Returns</dt><dd>true on success, false on allocation failure. </dd></dl> 358 359 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00042">42</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 360 361 </div> 362 </div> 363 <a id="a382cc2dc480ebb9c7951eb3235be89b4"></a> 364 <h2 class="memtitle"><span class="permalink"><a href="#a382cc2dc480ebb9c7951eb3235be89b4">§ </a></span>cbor_array_set()</h2> 365 366 <div class="memitem"> 367 <div class="memproto"> 368 <table class="memname"> 369 <tr> 370 <td class="memname">bool cbor_array_set </td> 371 <td>(</td> 372 <td class="paramtype"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 373 <td class="paramname"><em>item</em>, </td> 374 </tr> 375 <tr> 376 <td class="paramkey"></td> 377 <td></td> 378 <td class="paramtype">size_t </td> 379 <td class="paramname"><em>index</em>, </td> 380 </tr> 381 <tr> 382 <td class="paramkey"></td> 383 <td></td> 384 <td class="paramtype"><a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 385 <td class="paramname"><em>value</em> </td> 386 </tr> 387 <tr> 388 <td></td> 389 <td>)</td> 390 <td></td><td></td> 391 </tr> 392 </table> 393 </div><div class="memdoc"> 394 395 <p>Set item by index. </p> 396 <p>Creating arrays with holes is not possible</p> 397 <dl class="params"><dt>Parameters</dt><dd> 398 <table class="params"> 399 <tr><td class="paramname">item[borrow]</td><td>An array </td></tr> 400 <tr><td class="paramname">value[incref]</td><td>The item to assign </td></tr> 401 <tr><td class="paramname">index</td><td>The index, first item is 0. </td></tr> 402 </table> 403 </dd> 404 </dl> 405 <dl class="section return"><dt>Returns</dt><dd>true on success, false on allocation failure. </dd></dl> 406 407 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00030">30</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 408 409 </div> 410 </div> 411 <a id="a4f634a9a4bc834e4ea6ac43e94d51f84"></a> 412 <h2 class="memtitle"><span class="permalink"><a href="#a4f634a9a4bc834e4ea6ac43e94d51f84">§ </a></span>cbor_array_size()</h2> 413 414 <div class="memitem"> 415 <div class="memproto"> 416 <table class="memname"> 417 <tr> 418 <td class="memname">size_t cbor_array_size </td> 419 <td>(</td> 420 <td class="paramtype">const <a class="el" href="structcbor__item__t.html">cbor_item_t</a> * </td> 421 <td class="paramname"><em>item</em></td><td>)</td> 422 <td></td> 423 </tr> 424 </table> 425 </div><div class="memdoc"> 426 427 <p>Get the number of members. </p> 428 <dl class="params"><dt>Parameters</dt><dd> 429 <table class="params"> 430 <tr><td class="paramname">item[borrow]</td><td>An array </td></tr> 431 </table> 432 </dd> 433 </dl> 434 <dl class="section return"><dt>Returns</dt><dd>The number of members </dd></dl> 435 436 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00012">12</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 437 438 </div> 439 </div> 440 <a id="a93d7c18019000d5e206a81a4cca70631"></a> 441 <h2 class="memtitle"><span class="permalink"><a href="#a93d7c18019000d5e206a81a4cca70631">§ </a></span>cbor_new_definite_array()</h2> 442 443 <div class="memitem"> 444 <div class="memproto"> 445 <table class="memname"> 446 <tr> 447 <td class="memname"><a class="el" href="structcbor__item__t.html">cbor_item_t</a>* cbor_new_definite_array </td> 448 <td>(</td> 449 <td class="paramtype">size_t </td> 450 <td class="paramname"><em>size</em></td><td>)</td> 451 <td></td> 452 </tr> 453 </table> 454 </div><div class="memdoc"> 455 456 <p>Create new definite array. </p> 457 <dl class="params"><dt>Parameters</dt><dd> 458 <table class="params"> 459 <tr><td class="paramname">size</td><td>Number of slots to preallocate </td></tr> 460 </table> 461 </dd> 462 </dl> 463 <dl class="section return"><dt>Returns</dt><dd><b>new</b> array or <code>NULL</code> upon malloc failure </dd></dl> 464 465 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00106">106</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 466 467 </div> 468 </div> 469 <a id="aaec916ccc6f19782b6aef5ec1da2cc26"></a> 470 <h2 class="memtitle"><span class="permalink"><a href="#aaec916ccc6f19782b6aef5ec1da2cc26">§ </a></span>cbor_new_indefinite_array()</h2> 471 472 <div class="memitem"> 473 <div class="memproto"> 474 <table class="memname"> 475 <tr> 476 <td class="memname"><a class="el" href="structcbor__item__t.html">cbor_item_t</a>* cbor_new_indefinite_array </td> 477 <td>(</td> 478 <td class="paramname"></td><td>)</td> 479 <td></td> 480 </tr> 481 </table> 482 </div><div class="memdoc"> 483 484 <p>Create new indefinite array. </p> 485 <dl class="section return"><dt>Returns</dt><dd><b>new</b> array or <code>NULL</code> upon malloc failure </dd></dl> 486 487 <p>Definition at line <a class="el" href="arrays_8c_source.html#l00138">138</a> of file <a class="el" href="arrays_8c_source.html">arrays.c</a>.</p> 488 489 </div> 490 </div> 491 </div><!-- contents --> 492 <!-- start footer part --> 493 <hr class="footer"/><address class="footer"><small> 494 Generated on Mon Feb 6 2017 00:26:19 for libcbor by  <a href="http://www.doxygen.org/index.html"> 495 <img class="footer" src="doxygen.png" alt="doxygen"/> 496 </a> 1.8.12 497 </small></address> 498 </body> 499 </html> 500