module PersistentRef: sig
.. end
This module implements a persistent store: in other words, it
is a purely functional implementation of references, with an
explicit store.
type
location
type 'a
store
val empty : 'a store
val make : 'a ->
'a store -> location * 'a store
val get : location -> 'a store -> 'a
val set : location ->
'a -> 'a store -> 'a store
val iter : ('a -> unit) -> 'a store -> unit
val fold : ('acc -> location -> 'a -> 'acc) ->
'acc -> 'a store -> 'acc
val eq : location -> location -> bool
val neq : location -> location -> bool
val compare : location -> location -> int
val valid : location -> 'a store -> bool