From 6b649aba925b6f7462da07599fe67ebb12a3460e Mon Sep 17 00:00:00 2001 From: Samuel Mimram Date: Wed, 28 Jul 2004 21:54:47 +0000 Subject: Imported Upstream version 8.0pl1 --- pretyping/cases.mli | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 pretyping/cases.mli (limited to 'pretyping/cases.mli') diff --git a/pretyping/cases.mli b/pretyping/cases.mli new file mode 100644 index 00000000..1d2f9025 --- /dev/null +++ b/pretyping/cases.mli @@ -0,0 +1,56 @@ +(************************************************************************) +(* v * The Coq Proof Assistant / The Coq Development Team *) +(* evar_defs -> bool -> inductive_family -> constr array + +type ml_case_error = + | MlCaseAbsurd + | MlCaseDependent + +exception NotInferable of ml_case_error + +val pred_case_ml : (* raises [NotInferable] if not inferable *) + env -> evar_map -> bool -> inductive_type -> int * types -> constr + +(*s Compilation of pattern-matching. *) + +val compile_cases : + loc -> (type_constraint -> env -> rawconstr -> unsafe_judgment) + * evar_defs -> type_constraint -> env -> + (rawconstr option * rawconstr option ref) * + (rawconstr * (name * (loc * inductive * name list) option) ref) list * + (loc * identifier list * cases_pattern list * rawconstr) list -> + unsafe_judgment -- cgit v1.2.3