module OASISUtils:sig
..end
Various utilities
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
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.
val failwithf : ('a, unit, string, 'b) Stdlib.format4 -> 'a
This function raises the Failure
exception just as failwith
except that one specifies the string raised through a format string.
Example: failwithf "Cannot do %s because of %d" str i
val file_location : ?pos1:Stdlib.Lexing.position ->
?pos2:Stdlib.Lexing.position ->
?lexbuf:Stdlib.Lexing.lexbuf -> unit -> string
This function returns a string describing a position in a file, to locate an error. The format of the string is compatible with OCaml compilation location format.
val failwithpf : ?pos1:Stdlib.Lexing.position ->
?pos2:Stdlib.Lexing.position ->
?lexbuf:Stdlib.Lexing.lexbuf -> ('a, unit, string, 'b) Stdlib.format4 -> 'a
This function raises the Failure
exception just as failwith
except that one specifies the string raised through a format string
and locate the error using lexbuf
in the source file.
Example: failwithpf lexbuf "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