An implementation of the Concise Binary Object Representation (CBOR) as specified by RFC 8949 for OCaml.
It can process CBOR data items without a complete in-memory representation of the data (see
This library supports the CBOR basic generic data model (see CBOR Data Models) modulo following TODOs:
[ ] Support for IEEE 754 Half-Precision Float (16 bits). Support for decoding such values could be added with some minimal OCaml code (see https://www.rfc-editor.org/rfc/rfc8949.html#name-half-precision)
[ ] Indefinite-lenght byte and text strings
In addition to the basic generic data model this implementation supports:
Simple values for
Cborl.Integer zitems with
zthat is larger than what can be encoded in 8 bytes will be encoded as Bignums (tag 2 or 3 followed by a bytestring; see Section 3.4.3 of RFC 8949).
Contributions are very welcome!