package batteries

  1. Overview
  2. Docs
A community-maintained standard library extension

Install

Dune Dependency

Authors

Maintainers

Sources

v3.9.0.tar.gz
md5=ea26b5c72e6731e59d856626049cca4d
sha512=55975b62c26f6db77433a3ac31f97af609fc6789bb62ac38b267249c78fd44ff37fe81901f1cf560857b9493a6046dd37b0d1c0234c66bd59e52843aac3ce6cb

doc/batteries.unthreaded/BatGlobal/index.html

Module BatGlobalSource

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.

  • author Nicolas Cannasse
  • author David Teller (boilerplate code)
Sourcetype 'a t

Abstract type of a global

Sourceexception 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.

Sourceval empty : string -> 'a t

Returns an new named empty global. The name of the global can be any string. It identifies the global and makes debugging easier. Using the same string twice will not return the same global twice, but will create two globals with the same name.

Sourceval name : 'a t -> string

Retrieve the name of a global.

Sourceval set : 'a t -> 'a -> unit

Set the global value contents.

Sourceval get_exn : 'a t -> 'a

Get the global value contents - raise Global_not_initialized if not defined.

Sourceval get : 'a t -> 'a option

Return None if the global is undefined, else Some v where v is the current global value contents.

Sourceval undef : 'a t -> unit

Reset the global value contents to undefined.

Sourceval isdef : 'a t -> bool

Return true if the global value has been set.

OCaml

Innovation. Community. Security.