diff options
Diffstat (limited to 'interp')
| -rw-r--r-- | interp/constrintern.ml | 5 | ||||
| -rw-r--r-- | interp/constrintern.mli | 5 | ||||
| -rw-r--r-- | interp/topconstr.ml | 2 | ||||
| -rw-r--r-- | interp/topconstr.mli | 2 |
4 files changed, 10 insertions, 4 deletions
diff --git a/interp/constrintern.ml b/interp/constrintern.ml index a8dad2216a..357ce43774 100644 --- a/interp/constrintern.ml +++ b/interp/constrintern.ml @@ -1277,8 +1277,9 @@ let interp_constr_judgment_evars evdref env c = type ltac_sign = identifier list * unbound_ltac_var_map -let interp_constrpattern sigma env c = - pattern_of_rawconstr (intern_gen false sigma env ~allow_patvar:true c) +let intern_constr_pattern sigma env ?(as_type=false) ?(ltacvars=([],[])) c = + let c = intern_gen as_type ~allow_patvar:true ~ltacvars sigma env c in + pattern_of_rawconstr c let interp_aconstr impls (vars,varslist) a = let env = Global.env () in diff --git a/interp/constrintern.mli b/interp/constrintern.mli index a646b63146..6410c9b2ee 100644 --- a/interp/constrintern.mli +++ b/interp/constrintern.mli @@ -113,8 +113,9 @@ val interp_constr_judgment : evar_map -> env -> constr_expr -> unsafe_judgment (* Interprets constr patterns *) -val interp_constrpattern : - evar_map -> env -> constr_expr -> patvar list * constr_pattern +val intern_constr_pattern : + evar_map -> env -> ?as_type:bool -> ?ltacvars:ltac_sign -> + constr_pattern_expr -> patvar list * constr_pattern val interp_reference : ltac_sign -> reference -> rawconstr diff --git a/interp/topconstr.ml b/interp/topconstr.ml index 2cbe539819..6bee22f6cf 100644 --- a/interp/topconstr.ml +++ b/interp/topconstr.ml @@ -675,6 +675,8 @@ and recursion_order_expr = | CWfRec of constr_expr | CMeasureRec of constr_expr +type constr_pattern_expr = constr_expr + (***********************) (* For binders parsing *) diff --git a/interp/topconstr.mli b/interp/topconstr.mli index 2d293eacbf..cecea239c3 100644 --- a/interp/topconstr.mli +++ b/interp/topconstr.mli @@ -172,6 +172,8 @@ type typeclass_constraint = name located * binding_kind * constr_expr and typeclass_context = typeclass_constraint list +type constr_pattern_expr = constr_expr + (**********************************************************************) (* Utilities on constr_expr *) |
