package bare_encoding
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=29c842dc6ed864345c8c7ff601fa6bdae53a50000ff5342cd8ace4d3d0021ba6
sha512=2785df62a58786dd8ca68c9c1fb1cb0dcc8a8b3dfd9f79a3cad201f5870718ea8524ce3b4bf3dbbab06d3b63733deb2100bf712f730772be1ee1c5a6dabba402
Description
README
Bare-OCaml
A simple code generator and runtime library for BARE following the spec.
License: MIT.
online documentation: https://c-cube.github.io/bare-ocaml/
Features
runtime library named
Bare
, with entrypoints for encoding/decoding all the base types overBuffer.t
andbytes
respectively.code generator for producing OCaml code with type declarations and encoder/decoder functions.
the code generator can handle mutually recursive types and out-of-order declarations, by sorting them first. Each type gets its own toplevel module; for example
type foo int
will become:module Int = struct type t = int64 let decode = … let encode = … end
pretty-printers can be generated using the
--pp
optionthe generated code can be made dependency-free by using
--standalone
. In that case, the code for theBare
module will be inserted at the beginning of the generated code.
basic testing (needs to be improved when test vectors are published)
basic vim syntax files in
data/vim/