diff options
Diffstat (limited to 'typing/types.mli')
-rw-r--r-- | typing/types.mli | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/typing/types.mli b/typing/types.mli index 93ca3079c0..8d3408bf86 100644 --- a/typing/types.mli +++ b/typing/types.mli @@ -167,7 +167,8 @@ type class_type = and class_signature = { cty_self: type_expr; cty_vars: (Asttypes.mutable_flag * type_expr) Vars.t; - cty_concr: Concr.t } + cty_concr: Concr.t; + cty_inher: (Path.t * type_expr list) list } type class_declaration = { cty_params: type_expr list; @@ -191,13 +192,18 @@ and signature = signature_item list and signature_item = Tsig_value of Ident.t * value_description - | Tsig_type of Ident.t * type_declaration + | Tsig_type of Ident.t * type_declaration * rec_status | Tsig_exception of Ident.t * exception_declaration - | Tsig_module of Ident.t * module_type + | Tsig_module of Ident.t * module_type * rec_status | Tsig_modtype of Ident.t * modtype_declaration - | Tsig_class of Ident.t * class_declaration - | Tsig_cltype of Ident.t * cltype_declaration + | Tsig_class of Ident.t * class_declaration * rec_status + | Tsig_cltype of Ident.t * cltype_declaration * rec_status and modtype_declaration = Tmodtype_abstract | Tmodtype_manifest of module_type + +and rec_status = + Trec_not (* not recursive *) + | Trec_first (* first in a recursive group *) + | Trec_next (* not first in a recursive group *) |