aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre-Marie Pédrot2014-11-30 00:09:04 +0100
committerPierre-Marie Pédrot2014-11-30 00:21:32 +0100
commit2ee213b824dda48c3fe60e95316daf09f07e8075 (patch)
tree200cb82df8cdc9cecad348f985839f405b383fd7
parent080ba87d0059a02f47e748b6d2ba76d4bb74d045 (diff)
Adding missing unsafe primitives to Proofview.
-rw-r--r--proofs/proofview.ml10
-rw-r--r--proofs/proofview.mli7
2 files changed, 17 insertions, 0 deletions
diff --git a/proofs/proofview.ml b/proofs/proofview.ml
index 15110a67c9..a8b77e225f 100644
--- a/proofs/proofview.ml
+++ b/proofs/proofview.ml
@@ -799,6 +799,16 @@ module Unsafe = struct
{ step with comb = step.comb @ gls }
end
+ let tclGETGOALS =
+ let open Proof in
+ Pv.get >>= begin fun step -> tclUNIT step.comb end
+
+ let tclSETGOALS gls =
+ Pv.modify begin fun step ->
+ let gls = undefined step.solution gls in
+ { step with comb = gls }
+ end
+
let tclEVARSADVANCE evd =
Pv.modify (fun ps -> { solution = evd; comb = undefined evd ps.comb })
diff --git a/proofs/proofview.mli b/proofs/proofview.mli
index 796a6a7baa..b758559beb 100644
--- a/proofs/proofview.mli
+++ b/proofs/proofview.mli
@@ -380,6 +380,13 @@ module Unsafe : sig
goal is already solved, it is not added. *)
val tclNEWGOALS : Goal.goal list -> unit tactic
+ (** [tclSETGOALS gls] sets goals [gls] as the goals being under focus. If a
+ goal is already solved, it is not set. *)
+ val tclSETGOALS : Goal.goal list -> unit tactic
+
+ (** [tclGETGOALS] returns the list of goals under focus. *)
+ val tclGETGOALS : Goal.goal list tactic
+
(** Sets the evar universe context. *)
val tclEVARUNIVCONTEXT : Evd.evar_universe_context -> unit tactic