package irmin
-
irmin
-
-
irmin_mem
-
Library
Module
Module type
Parameter
Class
Class type
Backend configuration.
A backend configuration is a set of keys mapping to typed values. Backends define their own keys.
Configuration converters
A configuration converter transforms a string value to an OCaml value and vice-versa. There are a few built-in converters.
type 'a parser = string -> ('a, [ `Msg of string ]) result
The type for configuration converter parsers.
type 'a printer = 'a Fmt.t
The type for configuration converter printers.
Keys
key ~docs ~docv ~doc name conv default
is a configuration key named name
that maps to value default
by default. conv
is used to convert key values provided by end users.
docs
is the title of a documentation section under which the key is documented. doc
is a short documentation string for the key, this should be a single sentence or paragraph starting with a capital letter and ending with a dot. docv
is a meta-variable for representing the values of the key (e.g. "BOOL"
for a boolean).
- raises Invalid_argument
if the key name is not made of a sequence of ASCII lowercase letter, digit, dash or underscore.
Warning. No two keys should share the same
name
as this may lead to difficulties in the UI.
val name : 'a key -> string
The key name.
val default : 'a key -> 'a
default k
is k
's default value.
val doc : 'a key -> string option
doc k
is k
's documentation string (if any).
val docv : 'a key -> string option
docv k
is k
's value documentation meta-variable (if any).
val docs : 'a key -> string option
docs k
is k
's documentation section (if any).
val root : string option key
Default --root=ROOT
argument.
Configurations
val empty : t
empty
is the empty configuration.
val is_empty : t -> bool
is_empty c
is true
iff c
is empty.
Built-in value converters
val bool : bool converter
bool
converts values with bool_of_string
.
val int : int converter
int
converts values with int_of_string
.
val string : string converter
string
converts values with the identity function.
uri
converts values with Uri.of_string
.