`sig
module WeakHash :
sig
type t
type data
val create : int -> Monitor_sig.Monitor.Tag.WeakHash.t
val clear : Monitor_sig.Monitor.Tag.WeakHash.t -> unit
val merge :
Monitor_sig.Monitor.Tag.WeakHash.t ->
Monitor_sig.Monitor.Tag.WeakHash.data ->
Monitor_sig.Monitor.Tag.WeakHash.data
val add :
Monitor_sig.Monitor.Tag.WeakHash.t ->
Monitor_sig.Monitor.Tag.WeakHash.data -> unit
val remove :
Monitor_sig.Monitor.Tag.WeakHash.t ->
Monitor_sig.Monitor.Tag.WeakHash.data -> unit
val find :
Monitor_sig.Monitor.Tag.WeakHash.t ->
Monitor_sig.Monitor.Tag.WeakHash.data ->
Monitor_sig.Monitor.Tag.WeakHash.data
val find_all :
Monitor_sig.Monitor.Tag.WeakHash.t ->
Monitor_sig.Monitor.Tag.WeakHash.data ->
Monitor_sig.Monitor.Tag.WeakHash.data list
val mem :
Monitor_sig.Monitor.Tag.WeakHash.t ->
Monitor_sig.Monitor.Tag.WeakHash.data -> bool
val iter :
(Monitor_sig.Monitor.Tag.WeakHash.data -> unit) ->
Monitor_sig.Monitor.Tag.WeakHash.t -> unit
val fold :
(Monitor_sig.Monitor.Tag.WeakHash.data -> 'a -> 'a) ->
Monitor_sig.Monitor.Tag.WeakHash.t -> 'a -> 'a
val count : Monitor_sig.Monitor.Tag.WeakHash.t -> int
val stats :
Monitor_sig.Monitor.Tag.WeakHash.t ->
int * int * int * int * int * int
end
type t
val create :
?size:bool ->
?count:bool ->
?fct_size:(Monitor_sig.Monitor.Tag.WeakHash.t -> Stdlib.Int64.t) ->
?period:int -> string -> Monitor_sig.Monitor.Tag.t
val kill : Monitor_sig.Monitor.Tag.t -> unit
val set_period : Monitor_sig.Monitor.Tag.t -> int -> unit
val mark : Monitor_sig.Monitor.Tag.t -> 'a -> 'a
end`