Library
Module
Module type
Parameter
Class
Class type
Configuration management module.
type path = link list
Type for paths between keys
Type for untyped keys (or keys with unknown type)
kind
: a string describing the type of this keydescr
: a key description/titlecomments
: some comments on the key purposesplug
: a way to plug subkeyssubs
: the list of link names to subkeyspath
: a way to access subkeysroutes
: a way to find paths to an other keytype 'a t =
< kind : string option
; alias : ?comments:string list -> ?descr:string -> (ut -> unit) -> 'a t
; descr : string
; comments : string list
; plug : link -> ut -> unit
; subs : link list
; path : path -> ut
; routes : ut -> path list
; ut : ut
; set_d : 'a option -> unit
; get_d : 'a option
; set : 'a -> unit
; get : 'a
; validate : ('a -> bool) -> unit
; on_change : ('a -> unit) -> unit >
Type for 'a keys
ut
: cast to un untyped keyset_d
: set the default value associated to the keyget_d
: get the default value associated to the keyset
: set the key value according to a user demmandget
: retrieve the resulting key valueexception Undefined of ut
Raised on access to an undefined key (without default value)
exception Unbound of ut * string
Raised when a specified link does not exist
exception Bound of ut * string
Raised when a specified link already exist
exception Mismatch of ut
Raised on access to a key with a mismatching type
exception Invalid_Value of ut
Raised on invalid value set
Raised when bad configuration assignations are encountered inside configuration files
Receipt to build a 'a key
val unit : unit builder
val int : int builder
val float : float builder
val bool : bool builder
val string : string builder
val list : string list builder
Some key builders
A structural key builder
Casts to specificaly typed keys. Raises Mismatch
on mismatching cast.
val path_of_string : string -> path
Convert a dot separated string to a path
val string_of_path : path -> string
Convert a path to a dot separated string
val conf_set : ut -> string -> unit
Add a value to the configuration keys, according to the given correctly formated string: "type key :value" Raises Wrong_Conf
in badly formated cases.
val conf_file : ut -> string -> unit
Read configuration values from the file associated with the given filename. Raises File_Wrong_Conf
with filename line and and error message in case of a bad configuration file.