Module Typerep_lib.Type_generic
module Variant_and_record_intf : module type of Variant_and_record_intf
module Helper : functor (A : Variant_and_record_intf.S) -> functor (B : Variant_and_record_intf.S) -> sig ... end
module type Named = sig ... end
module type Computation = sig ... end
module Make_named_for_closure : functor (X : sig ... end) -> Named with type 'a computation := 'a X.t
Not all computations are arrow types. For example:
module Ident : sig ... end
module type S = sig ... end
module Make : functor (X : sig ... end) -> S with type 'a t = 'a X.t
The
name
is used for debug information only in case of Broken_dependency. Therequired
is to handle dependencies between generics at runtime. Example: ifX
is the module given to build a generic computationG
that depends on three other computationA,B,C
then X.required shall beA.ident ; B.ident ; C.ident