module type S =sig..end
The output signature of the functor Ephemeron.K1.Make and 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.
Propose the same interface as usual hash table. However since
      the bindings are weak, even if mem h k is true, a subsequent
      find h k may raise Not_found because the garbage collector
      can run between the two.
Moreover, the table shouldn't be modified during a call to iter.
      Use filter_map_inplace in this case.
include Hashtbl.S
val clean : 'a t -> unitremove all dead bindings. Done automatically during automatic resizing.
val stats_alive : 'a t -> Hashtbl.statisticssame as Hashtbl.SeededS.stats but only count the alive bindings