module AtomicBool: sig .. end
Atomic containers for bool values.
val make : bool -> t 
Returns a new container holding the passed value.
 
val compare_and_set : t -> bool -> bool -> bool
compare_and_set a e u atomically sets the value of a to u if
 the current value is e. Returns whether the value of a was equal
 to e.
 
val get : t -> bool
Returns the current value.
 
val get_and_set : t -> bool -> bool
get_and_set a x atomically sets the value of a to x, and
 returns the previous value.
 
val lazy_set : t -> bool -> unit
lazy_set a x eventually sets the value of a to x.
 
val set : t -> bool -> unit
set a x sets the value of a to x.
 
val weak_compare_and_set : t -> bool -> bool -> bool
Similar to 
AtomicBool.compare_and_set, with a 
weak semantics: may be
 faster on some platforms, but does not provide ordering guarantees.
 
 
Null value
val null : t 
The null value.
 
val is_null : t -> bool
is_null obj returns true iff obj is equal to null.
 
val is_not_null : t -> bool
is_not_null obj returns false iff obj is equal to null.
 
Miscellaneous
val wrap : t -> t option
wrap obj wraps the reference 
obj into an option type:
Some x if obj is not null; 
None if obj is null. 
 
 
val unwrap : t option -> t 
unwrap obj unwraps the option 
obj into a bare reference:
Some x is mapped to x; 
None is mapped to null.