package dune-private-libs

  1. Overview
  2. Docs
Private libraries of Dune

Install

Dune Dependency

Authors

Maintainers

Sources

dune-2.5.1.tbz
sha256=8f77d3a87f208e0d7cccaa1c48c4bb1bb87d62d07c3f25e9b8ba298e028ce52b
sha512=f209f12ced10c1abf8782bdb0143f4cec77795f7174d2cc75130afb1e01550b01f2f77b9e3ec4888efdad83d2f9878d179b39126f824f4e522f3ef4da34bf27e

doc/dune-private-libs.dune_csexp/Dune_csexp/Csexp/index.html

Module Dune_csexp.Csexp

Canonical S-expressions

This module provides minimal support for reading and writing S-expressions in canonical form.

https://en.wikipedia.org/wiki/Canonical_S-expressions

Note that because the canonical representation of S-expressions is so simple, this module doesn't go out of his way to provide a fully generic parser and printer and instead just provides a few simple functions. If you are using fancy input sources, simply copy the parser and adapt it. The format is so simple that it's pretty difficult to get it wrong by accident.

To avoid a dependency on a particular S-expression library, the only module of this library is parameterised by the type of S-expressions.

  let rec print = function
    | Atom str -> Printf.printf "%d:%s" (String.length s)
    | List l -> List.iter print l
module type Sexp = sig ... end
module Make (Sexp : Sexp) : sig ... end
OCaml

Innovation. Community. Security.