Module Recent
module type S = { ... };
-
type variant=
;|A|B(int)|Cfoo
|Dbar
|E of{a: int,} -
type gadt(_)=
;|A : gadt(int)|B(int) : gadt(string)foo
|C:{a: int,}: gadt(unit) -
type polymorphic_variant=[|`A|`B(int)|`Cfoo
|`Dbar
]; -
type nonrec nonrec_= int; -
type empty_conj=
;|X([< `X& ('a) & ((int, float)) ]) : empty_conj -
type conj=
;|X([< `X(int) & ([< `B(int) & (float) ]) ]) : conj
module Z: { ... };
module X: { ... };