cborl

CBOR library
README

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 Cborl.Signal).

Scope

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 false, true, null and undefined

  • Bignums: Cborl.Integer z items with z that 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!

Acknowledgments

ocaml-cborl was initially developed for the openEngiadina project and has been supported by the NLNet Foundation trough the NGI0 Discovery Fund.

License

AGPL-3.0-or-later

Install
Published
04 Aug 2022
Sources
ocaml-cborl-v0.1.0.tar.gz
md5=855106fd1a3bed94af232eb168a51fd0
sha256=b065f4fb7961b8f7fbcffe0ee1cd8c7cfdd447b200a81e908fee00e73096a1e5
Dependencies
odoc
with-doc
qcheck
with-test
alcotest
with-test
fmt
>= "0.8.7"
zarith
>= "1.12"
ocaml
>= "4.14.0"
dune
>= "3.2"
Reverse Dependencies