package json-data-encoding
 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
On This Page
  
  
  Type-safe encoding to and decoding from JSON
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
  
    
      data-encoding-v1.0.1.tar.gz
    
    
        
    
  
  
  
    
  
  
    
  
        md5=82d6e7783274595c82cff4562e2b06a2
    
    
  sha512=df5d00dfef8afeada8a6aee2a97d491a2ce20cfe90aed203848f6098ba05ba60e2ee9d1afc0c6c07cf32dad3f8e34c0b55cf900ef1f2e7a72d704f07fd32e651
    
    
  Description
Published: 21 Mar 2024
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.
Usage
For a type t, you can use the library's combinators to build an 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:
open Data_encoding
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 encoding j
let () = assert (v = w)Tutorial
A full tutorial is available in markdown form in src/tutorial.md.
It is available online on ocaml.org's package documentation and on data-encoding's own online documentation.
Build and Install
data-encoding can be built from source using dune:
dune buildor installed directly from opam:
opam install data-encodingDev Dependencies (6)
- 
  
    conf-npm
  
  
    with-test
- 
  
    js_of_ocaml-compiler
  
  
    with-test
- 
  
    odoc
  
  
    with-doc
- 
  
    ocamlformat
  
  
    = "0.24.1" & with-doc
- 
  
    alcotest
  
  
    with-test
- 
  
    crowbar
  
  
    with-test
Used by (10)
- 
  
    bechamel-js
  
  
    >= "0.3.0"
- compsort
- 
  
    data-encoding
  
  
    = "0.4" | = "0.6" | >= "1.0.1"
- ez_api
- 
  
    goblint
  
  
    >= "2.0.0"
- 
  
    json-data-encoding-browser
  
  
    >= "1.0.1"
- 
  
    json-data-encoding-bson
  
  
    >= "1.0.1"
- ozulip
- 
  
    ppx_deriving_encoding
  
  
    >= "0.2.2"
- tezos-openapi
Conflicts (1)
- 
  
    data-encoding
  
  
    != version
 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
  On This Page