aboutsummaryrefslogtreecommitdiff
path: root/intf
diff options
context:
space:
mode:
authorArnaud Spiwack2014-12-19 10:28:58 +0100
committerArnaud Spiwack2014-12-19 16:27:45 +0100
commitfb9815baafc008a6e67e542eb8c2adf7a6375fe8 (patch)
tree206244b9fb02320c8ab6b7c0381e9da4eaeb19b5 /intf
parenta07648ca9c6b06414b271632c620122e51bf0f4a (diff)
Add a backtracking version of Ltac's [match].
[multimatch … with …] returns every possible successes: every matching branch and every successes of these matching branch, so that subsequent tactics can backtrack as well.
Diffstat (limited to 'intf')
-rw-r--r--intf/tacexpr.mli6
1 files changed, 5 insertions, 1 deletions
diff --git a/intf/tacexpr.mli b/intf/tacexpr.mli
index 0c2b754788..7c898b75eb 100644
--- a/intf/tacexpr.mli
+++ b/intf/tacexpr.mli
@@ -20,7 +20,11 @@ open Misctypes
open Locus
type direction_flag = bool (* true = Left-to-right false = right-to-right *)
-type lazy_flag = bool (* true = lazy false = eager *)
+type lazy_flag =
+ | General (* returns all possible successes *)
+ | Lazy (* returns all successes of the first matching branch *)
+ | Once (* returns the first success in a maching branch
+ (not necessarily the first) *)
type evars_flag = bool (* true = pose evars false = fail on evars *)
type rec_flag = bool (* true = recursive false = not recursive *)
type advanced_flag = bool (* true = advanced false = basic *)