Module CCRef

References

type 'a printer = Format.formatter ‑> 'a ‑> unit
type 'a ord = 'a ‑> 'a ‑> int
type 'a eq = 'a ‑> 'a ‑> bool
type 'a sequence = ('a ‑> unit) ‑> unit
type 'a t = 'a Pervasives.ref
val map : ('a ‑> 'b) ‑> 'a t ‑> 'b t

Transform the value

val create : 'a ‑> 'a t

Alias to ref

val iter : ('a ‑> unit) ‑> 'a t ‑> unit

Call the function on the content of the reference

val update : ('a ‑> 'a) ‑> 'a t ‑> unit

Update the reference's content with the given function

val incr_then_get : int t ‑> int

incr_then_get r increments r and returns its new value, think ++ r

val get_then_incr : int t ‑> int

get_then_incr r increments r and returns its old value, think r++

val swap : 'a t ‑> 'a t ‑> unit

Swap values.

val compare : 'a ord ‑> 'a t ord
val equal : 'a eq ‑> 'a t eq
val to_list : 'a t ‑> 'a list
val to_seq : 'a t ‑> 'a sequence
val pp : 'a printer ‑> 'a t printer