diff options
-rw-r--r-- | kernel/declarations.ml | 6 | ||||
-rw-r--r-- | kernel/declarations.mli | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/kernel/declarations.ml b/kernel/declarations.ml index c09254c2c..82ad0583c 100644 --- a/kernel/declarations.ml +++ b/kernel/declarations.ml @@ -85,3 +85,9 @@ type mutual_inductive_entry = { mind_entry_inds : (identifier * constr * identifier list * constr list) list} let mind_nth_type_packet mib n = mib.mind_packets.(n) + +let mind_arities_context mib = + Array.to_list + (Array.map (* No need to lift, arities contain no de Bruijn *) + (fun mip -> (Name mip.mind_typename, None, mind_user_arity mip)) + mib.mind_packets) diff --git a/kernel/declarations.mli b/kernel/declarations.mli index 0c8b15e3c..65f70e277 100644 --- a/kernel/declarations.mli +++ b/kernel/declarations.mli @@ -77,6 +77,8 @@ val mind_user_lc : one_inductive_body -> typed_type array val mind_user_arity : one_inductive_body -> typed_type val mind_nth_type_packet : mutual_inductive_body -> int -> one_inductive_body +val mind_arities_context : mutual_inductive_body -> rel_declaration list + (*s Declaration of inductive types. *) type mutual_inductive_entry = { |