Lines Matching refs:to

18   use can disabled. No #ifdefs or compiler options need to be set for
19 QCBOR to run correctly.
22 CBOR data types in to C data types, handling over and
23 underflow, strict typing and such so the caller doesn't have to
26 encoding/decoding to/from JSON, pretty printing, diagnostic
28 to native C representations is supported.
33 there is no recursion. The caller supplies the memory to hold the
36 have to run in small fixed memory.
41 protocols much simpler, say when compared to TinyCBOR.
51 **Extensible and general** – Provides a way to handle data types that
62 separated from the implementation. It can be put to use without
65 **Comprehensive test suite** – Easy to verify on a new platform or OS
71 These are functions to decode particular data types. They are an
72 alternative to and built on top of QCBORDecode_GetNext(). They do type
85 many fewer lines of code. They also tend to parallel the encoding
107 maps and arrays without the caller having to do anything. This
109 remains to support map searching with indefinite length strings.)
111 ## Comparison to TinyCBOR
115 section is for folks trying to understand the difference in
118 TinyCBOR's API is more minimalist and closer to the CBOR
129 larger. This includes the code to call the library, which is about the
135 doesn't have to check the return code of every call to an encode or
144 simpler, similar to the encoding code and easier to read. TinyCBOR
149 their conversion to floats, uint64_t and such.
153 fetched and converted to a C uint64_t whether the input CBOR is an
159 treats this similar to entering an array with one item. This is
166 designed to be able to run on small embedded devices the same as
187 compiles everything to run the tests. CMake is also available, please read
207 For most use cases you should just be able to add them to your
213 support UNIX style command line and make, you should be able to make a
214 simple project and add the test files to it. Then just call
215 RunTests() to invoke them all.
218 C pre processor macros that can be #defined in order to:
221 * to reduce code size
222 * to improve performance (a little)
223 * remove features to reduce code size
230 CMake can also be used to build QCBOR and the test application. Having the root
233 to build a shared library instead you must add the
235 The tests can be built into a simple command line application to run them as it
236 was mentioned before; or it can be built as a library to be integrated with your
274 * Encoding and decoding of half-precision with conversion to/from single
279 to/from floating-point
282 used to reduce object code size and dependency.
295 dependencies to be able to compile and run QCBOR.
298 QCBOR, but it limits QCBOR's use of them to converting the encoded
299 byte stream to them and copying them. Converting and copying them
313 example, QCBORDecode_GetUInt64ConvertAll() will be unable to convert
314 to and from float-point.
315 * Floats will be unconverted to double when decoding.
323 defining this is to remove dependency on floating point hardware and
335 of floating-point to and from integers, big numbers and
339 The primary reason to define this is to save object code.
355 it is usually possible to give options to the compiler to avoid all
356 floating-point hardware and instructions, to use software
359 in getting QCBOR to run in some environments in
367 If you are using CMake, it can also be used to configure the floating-point
368 support. These options can be enabled by adding them to the CMake configuration
369 step and setting their value to 'ON' (True). The following table shows the
393 from the QCBOR library varies a lot, ranging from 1KB to 15KB. The
407 Use of the supplied MemPool by calling QCBORDecode_SetMemPool() to
408 setup to decode indefinite-length strings adds 0.5KB.
410 Basic use of spiffy decode to brings in about 3KB. Using more spiffy
418 In addition to using fewer QCBOR functions, the following are some
419 ways to make the code smaller.
423 installed to be invoked by the gcc command). You can also turn off
424 stack gaurds with llvm. It is safe to turn off stack gaurds with this
426 carefully written to be defensive.
433 Here's the list of all features that can be disabled to save object
455 and the decoding more complex. They allow the encoder to not have to
457 it. Their main use is when encoding has to be done on a very
459 device, it is good to prohibit use of indefinite lengths so the
463 with the same API, except to decode indefinite-length strings a
487 fit in an int64_t to result in a QCBOR_ERR_MAP_LABEL_TYPE error.
490 protocols to use only small integers as labels.
497 or not to use spiffy decode features or to just use
504 concern, then it is probably better to use spiffy decode because it
505 is less work, there is less complexity and less testing to worry
521 [COSE, RFC 8152](https://tools.ietf.org/html/rfc8152) to support
530 * Ganesh Kanike for porting to QSEE
533 * Tamas Ban for porting to TF-M and 32-bit ARM
539 * Dave Thaler for portability to Windows
549 Files created after release to CAF use the standard 3-Clause BSD
563 contributors may be used to endorse or promote products derived from