functor (X : sig type 'a t end->
  sig
    type t
    val create : int -> Typename.Table.t
    val mem : Typename.Table.t -> 'Typename.typename -> bool
    val set : Typename.Table.t -> 'Typename.typename -> 'X.t -> unit
    val find : Typename.Table.t -> 'Typename.typename -> 'X.t option
  end