functor
(D : sig
val name : 'a Type.t -> string
val value_name : string
type 'a t
val repr : 'a -> 'a Type.Polymorphic.t
val pp :
(Type.precedence -> Format.formatter -> 'a -> unit) ->
Type.precedence ->
Format.formatter -> 'a Type.Polymorphic.t -> unit
end) ->
sig
type 'a poly = 'a D.t
val instantiate : 'a t -> 'a poly t
val is_instance_of : 'a t -> bool
val get_instance : 'a poly t -> 'a t
end