sig
  type 'a tbl
  type 'a t = 'UCharTbl.tbl
  val get : 'UCharTbl.tbl -> UChar.t -> 'a
  module type Type =
    sig
      type elt
      type t = UCharTbl.Type.elt UCharTbl.tbl
      val get :
        UCharTbl.Type.elt UCharTbl.tbl -> UChar.t -> UCharTbl.Type.elt
      val of_map :
        UCharTbl.Type.elt -> UCharTbl.Type.elt UMap.t -> UCharTbl.Type.t
    end
  module Make :
    functor (H : Hashtbl.HashedType->
      sig
        type elt = H.t
        type t = elt tbl
        val get : elt tbl -> UChar.t -> elt
        val of_map : elt -> elt UMap.t -> t
      end
  module Bool :
    sig
      type t
      val get : UCharTbl.Bool.t -> UChar.t -> bool
      val of_set : USet.t -> UCharTbl.Bool.t
    end
  module Bits :
    sig
      type t
      val of_map : int -> int UMap.t -> UCharTbl.Bits.t
      val get : UCharTbl.Bits.t -> UChar.t -> int
    end
  module Bytes :
    sig
      type t
      val of_map : int -> int UMap.t -> UCharTbl.Bytes.t
      val get : UCharTbl.Bytes.t -> UChar.t -> int
    end
  module Char :
    sig
      type t
      val of_map : char -> char UMap.t -> UCharTbl.Char.t
      val get : UCharTbl.Char.t -> UChar.t -> char
    end
end