Conex_utilsSourceString, unsigned integers, logging, collections, and more
filter_map f xs is xs', a list which contains all elements where f resulted in Some _.
'a fmt is the signature for pretty printers.
pp_list pp is a pretty printer for a list (surrounded by square brackets, elements are separated by semicolon). The pp is be a pretty printer for list elements.
str_pp pp a results in a string applying the pretty-printer to the value.
r >>= f is f a unless r is an Error, which is propagated. Monadic bind.
guard pred err is either Ok () (if pred holds), Error err otherwise.
foldM f a xs applies f to each element of xs, returns either Ok and the produced value, or Error.
iterM f xs applies f to each element of xs, returns either Ok and the produced value, or Error.
foldS f a s applies f to each element of the set s, returns either Ok and the produced value, or Error.
err_to_str pp res is either Ok a or Error str where str was produced by str_pp.
Some String utilities implemented here to avoid external dependencies. This is a subset of Astring.
64 bit unsigned integer with explicit overflow behaviour (see Uint.succ).
LOGS is a subset of the Logs library, providing four log streams.
The sum type of possible file types we expect
A path is a list of strings
path_to_string path is String.concat "/" path.
string_to_path str is String.cuts "/" str and ensuring no empty segments, ".", or ".." be present. If str contains a leading "/", it is discarded.
string_to_path_exb str is String.cuts "/" str and ensuring no empty segments, ".", or ".." be present. If str contains a leading "/", it is discarded.
subpath ~parent p is true if p starts with all segments of parent.