package data-encoding

  1. Overview
  2. Docs
Library of JSON-and-binary encoding combinators

Install

Dune Dependency

Authors

Maintainers

Sources

data-encoding-v0.1.tar.gz
md5=84f11d7485f7f15a3da7d658b8fce8ea
sha512=b15324d1fb8ceb0a75f22a6ee4de052da997ca7e5f75c5f15152f44eef19b05ab7522fda6159a2522608bf6a790713544e311fb97cbf17ace8f2bedc91c32fe8

Description

Published: 26 Sep 2019

README

Data-encoding

A library for encoding and decoding data. It offers a great degree of control over the layout of data. It supports json and binary serialisation/deserialisation.

Use

For a type t, you can use the library's combinators to build a encoding t encoding. You can then use the various reading/writing functions with this encoding to serialise and deserialise values of the type t.

Example:

type t = (string * int) list
let encoding = list (tup2 string int31)
let v = [("foo", 32); ("bar", 0)]
let j = Json.construct encoding v
let w = Json.destruct j
let () = assert (v = w)

Build and Install

data-encoding can be built from source using dune:

dune build

or installed directly from opam:

opam install data-encoding

Dependencies (8)

  1. ocplib-json-typed-bson >= "0.7"
  2. ocplib-json-typed >= "0.7"
  3. hex >= "1.3.0"
  4. zarith >= "1.4"
  5. ezjsonm
  6. lwt
  7. dune >= "1.11"
  8. ocaml >= "4.07"

Dev Dependencies (2)

  1. crowbar with-test
  2. alcotest with-test

Conflicts

None