You are viewing a development version of the library. Goto the latest version.

Module OASISUtils

module OASISUtils: sig .. end
Various utilities
Author(s): Sylvain Le Gall


module MapExt: sig .. end
module MapString: MapExt.S  with type key = String.t


module SetExt: sig .. end
module SetString: SetExt.S  with type elt = String.t
Set for String.
module SetStringCsl: SetExt.S  with type elt = String.t
Set for String.


module HashStringCsl: Hashtbl.S  with type key = String.t
Caseless string hashtable

Variable name

val varname_of_string : ?hyphen:char -> string -> string
varname_of_string ~hyphen:c s Transform a string s into a variable name, following this convention: no digit at the beginning, lowercase, only a-z and 0-9 chars. Whenever there is a problem, use an hyphen.
val varname_concat : ?hyphen:char -> string -> string -> string
varname_concat ~hyphen p s Concat variable name, removing hyphen at end of p and at beginning of s.
val is_varname : string -> bool
is_varname str Check that the string str is a valid varname. See OASISUtils.varname_of_string for definition.

Fail with Printf.sprintf

val failwithf : ('a, unit, string, 'b) Pervasives.format4 -> 'a
This function raise the Failure exception just as failwith except that one specify the string raised through a format string.

Example: failwithf "Cannot do %s because of %d" str i


val compare_csl : string -> string -> int
Caseless compare function


val may : ('a -> unit) -> 'a option -> unit
may f (Some x) calls f x or do nothing.
module POSIXShell: sig .. end