package opam-format

  1. Overview
  2. Docs

OPAM files syntax and conversion tools

Get the position out of a value

low-level Pps for the Lines parser (string list list)

type lines = string list list
val lines_set : empty:'set -> add:('elt -> 'set -> 'set) -> fold:(('elt -> lines -> lines) -> 'set -> lines -> lines) -> (string list, 'elt) OpamPp.t -> (lines, 'set) OpamPp.t

Provided an empty element, addition and fold operations with signatures as per Set.S, and a pp from lines to elements, returns a pp parsing from lines

val lines_map : empty:'map -> add:('k -> 'v -> 'map -> 'map) -> fold:(('k -> 'v -> lines -> lines) -> 'map -> lines -> lines) -> (string list, 'k * 'v) OpamPp.t -> (lines, 'map) OpamPp.t

Provided an empty element, addition and fold operations with signatures as per Map.S, and a pp from lines to key, value pairs, returns a pp parsing from lines

Pps for the type value, used by opam-syntax files (opamfile)

module V : sig ... end

These base converters raise Unexpected when not run on the right input (which is then converted to Bad_format by the parser.

Specific Pps for items lists and fields (opamfile)

module I : sig ... end