aboutsummaryrefslogtreecommitdiffhomepage
path: root/intf/misctypes.mli
diff options
context:
space:
mode:
authorGravatar Hugo Herbelin <Hugo.Herbelin@inria.fr>2014-08-13 18:02:11 +0200
committerGravatar Hugo Herbelin <Hugo.Herbelin@inria.fr>2014-08-18 18:56:38 +0200
commit5c82bcd1f87cc893319f2553c81a73c69b13b54d (patch)
tree83ca001f700b5fdb48d0fac8e249c08c589a1d15 /intf/misctypes.mli
parentd5fece25d8964d5d9fcd55b66164286aeef5fb9f (diff)
Reorganisation of intropattern code
- emphasizing the different kinds of patterns - factorizing code of the non-naming intro-patterns Still some questions: - Should -> and <- apply to hypotheses or not (currently they apply to hypotheses either when used in assert-style tactics or apply in, or when the term to rewrite is a variable, in which case "subst" is applied)? - Should "subst" be used when the -> or <- rewrites an equation x=t posed by "assert" (i.e. rewrite everywhere and clearing x and hyp)? - Should -> and <- be applicable in non assert-style if the lemma has quantifications?
Diffstat (limited to 'intf/misctypes.mli')
-rw-r--r--intf/misctypes.mli12
1 files changed, 8 insertions, 4 deletions
diff --git a/intf/misctypes.mli b/intf/misctypes.mli
index 6ee44215c..3d9a344ee 100644
--- a/intf/misctypes.mli
+++ b/intf/misctypes.mli
@@ -17,14 +17,18 @@ type patvar = Id.t
(** Introduction patterns *)
type intro_pattern_expr =
- | IntroOrAndPattern of or_and_intro_pattern_expr
- | IntroInjection of (Loc.t * intro_pattern_expr) list
+ | IntroForthcoming of bool
+ | IntroNaming of intro_pattern_naming_expr
+ | IntroAction of intro_pattern_action_expr
+and intro_pattern_naming_expr =
| IntroWildcard
- | IntroRewrite of bool
| IntroIdentifier of Id.t
| IntroFresh of Id.t
- | IntroForthcoming of bool
| IntroAnonymous
+and intro_pattern_action_expr =
+ | IntroOrAndPattern of or_and_intro_pattern_expr
+ | IntroInjection of (Loc.t * intro_pattern_expr) list
+ | IntroRewrite of bool
and or_and_intro_pattern_expr = (Loc.t * intro_pattern_expr) list list
(** Move destination for hypothesis *)