aboutsummaryrefslogtreecommitdiffhomepage
path: root/engine
diff options
context:
space:
mode:
authorGravatar Hugo Herbelin <Hugo.Herbelin@inria.fr>2017-12-06 09:01:45 +0100
committerGravatar Maxime Dénès <mail@maximedenes.fr>2018-03-08 21:58:31 +0100
commite508aec3a90aca93c188c54b707d19114ef5ff83 (patch)
tree8fd768cf8234b4b39368b6bc3a97a39423bb98af /engine
parentd2c50bb29df8f0b23f7ee498abeda43a672fc688 (diff)
Proof engine: adding a function to save future goals including principal one.
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. *)