aboutsummaryrefslogtreecommitdiff
path: root/proofs/tactic_debug.ml
diff options
context:
space:
mode:
Diffstat (limited to 'proofs/tactic_debug.ml')
-rw-r--r--proofs/tactic_debug.ml24
1 files changed, 20 insertions, 4 deletions
diff --git a/proofs/tactic_debug.ml b/proofs/tactic_debug.ml
index 0cdf49c70c..08446d0112 100644
--- a/proofs/tactic_debug.ml
+++ b/proofs/tactic_debug.ml
@@ -25,23 +25,39 @@ let db_pr_goal = function
| Some g ->
mSGNL [<'sTR ("Goal:"); 'fNL; Proof_trees.pr_goal (Tacmach.sig_it g) >]
+(* Prints the commands *)
+let help () =
+ mSGNL [< 'sTR "Commands: <Enter>=Continue, h=Help, s=Skip, x=Exit" >]
+
(* Prints the state and waits for an instruction *)
let debug_prompt goalopt tac_ast =
db_pr_goal goalopt;
- mSG [< 'sTR "Going to execute:"; 'fNL; (gentacpr tac_ast); 'fNL; 'fNL;
- 'sTR "----<Enter>=Continue----s=Skip----x=Exit----" >];
+ mSG [< 'sTR "Going to execute:"; 'fNL; (gentacpr tac_ast); 'fNL >];
+(* 'sTR "Commands: <Enter>=Continue, s=Skip, x=Exit" >];*)
+(* mSG [< 'sTR "Going to execute:"; 'fNL; (gentacpr tac_ast); 'fNL; 'fNL;
+ 'sTR "----<Enter>=Continue----s=Skip----x=Exit----" >];*)
let rec prompt () =
- mSG [<'fNL; 'sTR "TcDebug> " >];
+ mSG [<'fNL; 'sTR "TcDebug > " >];
flush stdout;
let inst = read_line () in
- mSGNL [<>];
+(* mSGNL [<>];*)
match inst with
| "" -> DebugOn
| "s" -> DebugOff
| "x" -> Exit
+ | "h" ->
+ begin
+ help ();
+ prompt ()
+ end
| _ -> prompt () in
prompt ()
+(* Prints a constr *)
+let db_constr debug env c =
+ if debug = DebugOn then
+ mSGNL [< 'sTR "Evaluated term --> "; prterm_env env c >]
+
(* Prints a matched hypothesis *)
let db_matched_hyp debug env (id,c) =
if debug = DebugOn then