sig
  type 'a lattice
  val __dynamic_type_lattice : Type.type_meta -> Type.type_meta
  val empty : unit -> 'Lattice.lattice
  val replace : 'Lattice.lattice -> Type.type_meta -> '-> unit
  val add : 'Lattice.lattice -> Type.type_meta -> '-> unit
  val find : 'Lattice.lattice -> Type.type_meta -> 'a
  val find_all : 'Lattice.lattice -> Type.type_meta -> 'a list
  val find_most_specific : 'Lattice.lattice -> Type.type_meta -> 'a list
  val find_all_most_specific :
    'Lattice.lattice -> Type.type_meta -> 'a list list
  val find_most_specific_keys :
    'Lattice.lattice -> Type.type_meta -> Type.type_meta list
end