module Global:sig..end
Mutable global variable.
Often in OCaml you want to have a global variable, which is mutable
and uninitialized when declared. You can use a 'a option ref but
this is not very convenient. The Global module provides functions
to easily create and manipulate such variables.
type 'a t
Abstract type of a global
exception Global_not_initialized of string
Raised when a global variable is accessed without first having been assigned a value. The parameter contains the name of the global.
val empty : string -> 'a tReturns an new named empty global. The name of the global can be any string. It identifies the global and makes debugging easier.
val name : 'a t -> stringRetrieve the name of a global.
val set : 'a t -> 'a -> unitSet the global value contents.
val get : 'a t -> 'aGet the global value contents - raise Global_not_initialized if not defined.
val undef : 'a t -> unitReset the global value contents to undefined.
val isdef : 'a t -> boolReturn true if the global value has been set.
val opt : 'a t -> 'a optionReturn None if the global is undefined, else Some v where v is the
current global value contents.