module D:Datatype.Make_with_collections
(
sig
typet =
Model.model
val name :string
val rehash :'a -> 'a
val structural_descr :Structural_descr.t
TODO: register and find below?
val reprs :Model.model list
val equal :Model.model -> Model.model -> bool
val compare :Model.model -> Model.model -> int
val hash :Model.model -> int
val copy :'a -> 'a
val internal_pretty_code :'a -> Format.formatter -> Model.model -> unit
val pretty :Format.formatter -> Model.model -> unit
val mem_project :(Project_skeleton.t -> bool) -> 'a -> bool
val varname :'a -> string
end
)
include Datatype.S
module Set:Datatype.Set
with type elt = t
module Map:Datatype.Map
with type key = t
module Hashtbl:Datatype.Hashtbl
with type key = t