Module Recent
module type S = sig ... end
-
type variant
=
|
A
|
B of int
|
C
foo
|
D
bar
|
E of
{
a : int;
}
-
type _ gadt
=
|
A : int gadt
|
B : int -> string gadt
foo
|
C :
{
a : int;
}
-> unit gadt
-
type polymorphic_variant
=[
|
`A
|
`B of int
|
`C
foo
|
`D
bar
]
-
type nonrec nonrec_
= int
-
type empty_conj
=
|
X : [< `X of & 'a & int * float ] -> empty_conj
-
type conj
=
|
X : [< `X of int & [< `B of int & float ] ] -> conj
module Z : sig ... end
module X : sig ... end