sig
  type 'a t
  type key
  val find : 'a Exthtbl.Private.t -> Exthtbl.Private.key -> 'a
  val find_def : 'a Exthtbl.Private.t -> 'a -> Exthtbl.Private.key -> 'a
  val find_opt : 'a Exthtbl.Private.t -> Exthtbl.Private.key -> 'a option
  val find_exn : 'a Exthtbl.Private.t -> exn -> Exthtbl.Private.key -> 'a
  val map :
    (Exthtbl.Private.key -> 'a -> 'b) ->
    'a Exthtbl.Private.t -> 'b Exthtbl.Private.t
  val iter :
    (Exthtbl.Private.key -> 'a -> unit) -> 'a Exthtbl.Private.t -> unit
  val fold :
    (Exthtbl.Private.key -> 'a -> 'acc -> 'acc) ->
    'a Exthtbl.Private.t -> 'acc -> 'acc
  val mem : 'a Exthtbl.Private.t -> Exthtbl.Private.key -> bool
  val length : 'a Exthtbl.Private.t -> int
  val is_empty : 'a Exthtbl.Private.t -> bool
end