Module type Type.Polymorphic

module type Polymorphic = sig .. end

For a polymorphic type value with one type variable, you must use an implementation of this signature.


type 'a poly 

Type of the polymorphic type (for instance 'a list). It must be instantiated before used. See function instantiate below.

val instantiate : 'a Type.t -> 'a poly Type.t * bool
val is_instance_of : 'a Type.t -> bool
val get_instance : 'a poly Type.t -> 'a Type.t

get_instance ty returns the type value used to create the given monomorphic instantiation.