Module type Wp.Model.Registry

module type Registry = sig .. end

module E: Wp.Model.Entries 
type key = E.key 
type data = E.data 
val mem : key -> bool
val find : key -> data
val get : key -> data option
val clear : unit -> unit
val remove : key -> unit
val define : key -> data -> unit

no redefinition ; circularity protected

val update : key -> data -> unit

set current value, with no protection

val memoize : (key -> data) ->
key -> data

with circularity protection

val compile : (key -> data) ->
key -> unit

with circularity protection

val callback : (key -> data -> unit) -> unit
val iter : (key -> data -> unit) -> unit
val iter_sorted : (key -> data -> unit) -> unit