.TH "Ephemeron.S" 3o source: 2019-01-25 OCamldoc "OCaml library" .SH NAME Ephemeron.S \- The output signature of the functor Ephemeron.K1.Make and Ephemeron.K2.Make. .SH Module type Module type Ephemeron.S .SH Documentation .sp Module type .BI "S" = .B sig end .sp The output signature of the functor .B Ephemeron\&.K1\&.Make and .B Ephemeron\&.K2\&.Make \&. These hash tables are weak in the keys\&. If all the keys of a binding are alive the binding is kept, but if one of the keys of the binding is dead then the binding is removed\&. .sp .sp .sp .PP .B === Propose the same interface as usual hash table\&. However since .B the bindings are weak, even if mem h k is true, a subsequent .B find h k may raise Not_found because the garbage collector .B can run between the two\&. .B .B Moreover, the table shouldn\&'t be modified during a call to iter\&. .B Use filter_map_inplace in this case\&. === .PP .I include Hashtbl.S .sp .sp .I val clean : .B 'a t -> unit .sp remove all dead bindings\&. Done automatically during automatic resizing\&. .sp .I val stats_alive : .B 'a t -> Hashtbl.statistics .sp same as .B Hashtbl\&.SeededS\&.stats but only count the alive bindings .sp