A few helpful base definitions.

Sourceval uid : unit -> int

uid () is new unique for the program run.

Sourceval suggest : string -> string list -> string list

suggest near candidates suggest values from candidates not too far from near.

Formatting helpers

Sourceval pp_text : Stdlib.Format.formatter -> string -> unit
Sourceval pp_lines : Stdlib.Format.formatter -> string -> unit
Sourceval pp_tokens : spaces:bool -> Stdlib.Format.formatter -> string -> unit

Error message helpers

Sourceval quote : string -> string
Sourceval alts_str : ?quoted:bool -> string list -> string
Sourceval err_ambiguous : kind:string -> string -> ambs:string list -> string
Sourceval err_unknown : ?dom:string list -> ?hints:string list -> kind:string -> string -> string
Sourceval err_multi_def : kind:string -> string -> ('b -> string) -> 'b -> 'b -> string

Textual OCaml value converters

Sourcetype 'a parser = string -> [ `Ok of 'a | `Error of string ]
Sourcetype 'a printer = Stdlib.Format.formatter -> 'a -> unit
Sourcetype 'a conv = 'a parser * 'a printer
Sourceval some : ?none:string -> 'a conv -> 'a option conv
Sourceval some' : ?none:'a -> 'a conv -> 'a option conv
Sourceval bool : bool conv
Sourceval char : char conv
Sourceval int : int conv
Sourceval nativeint : nativeint conv
Sourceval int32 : int32 conv
Sourceval int64 : int64 conv
Sourceval float : float conv
Sourceval string : string conv
Sourceval enum : (string * 'a) list -> 'a conv
Sourceval file : string conv
Sourceval dir : string conv
Sourceval non_dir_file : string conv
Sourceval list : ?sep:char -> 'a conv -> 'a list conv
Sourceval array : ?sep:char -> 'a conv -> 'a array conv
Sourceval pair : ?sep:char -> 'a conv -> 'b conv -> ('a * 'b) conv
Sourceval t2 : ?sep:char -> 'a conv -> 'b conv -> ('a * 'b) conv
Sourceval t3 : ?sep:char -> 'a conv -> 'b conv -> 'c conv -> ('a * 'b * 'c) conv
Sourceval t4 : ?sep:char -> 'a conv -> 'b conv -> 'c conv -> 'd conv -> ('a * 'b * 'c * 'd) conv
Sourceval env_bool_parse : bool parser