aboutsummaryrefslogtreecommitdiffhomepage
path: root/engine
diff options
context:
space:
mode:
Diffstat (limited to 'engine')
-rw-r--r--engine/evd.ml2
-rw-r--r--engine/evd.mli4
2 files changed, 6 insertions, 0 deletions
diff --git a/engine/evd.ml b/engine/evd.ml
index e0453713e..60bc2eb40 100644
--- a/engine/evd.ml
+++ b/engine/evd.ml
@@ -943,6 +943,8 @@ let future_goals evd = evd.future_goals
let principal_future_goal evd = evd.principal_future_goal
+let save_future_goals evd = (evd.future_goals, evd.principal_future_goal)
+
let reset_future_goals evd =
{ evd with future_goals = [] ; principal_future_goal=None }
diff --git a/engine/evd.mli b/engine/evd.mli
index 49632d2e7..44ec4a7e5 100644
--- a/engine/evd.mli
+++ b/engine/evd.mli
@@ -299,6 +299,10 @@ val principal_future_goal : evar_map -> Evar.t option
(** Retrieves the name of the principal existential variable if there
is one. Used by the [refine] primitive of the tactic engine. *)
+val save_future_goals : evar_map -> Evar.t list * Evar.t option
+(** Retrieves the list of future goals including the principal future
+ goal. Used by the [refine] primitive of the tactic engine. *)
+
val reset_future_goals : evar_map -> evar_map
(** Clears the list of future goals (as well as the principal future
goal). Used by the [refine] primitive of the tactic engine. *)