aboutsummaryrefslogtreecommitdiff
path: root/stm
diff options
context:
space:
mode:
authorEnrico Tassi2014-06-25 11:09:55 +0200
committerEnrico Tassi2014-06-25 13:50:24 +0200
commit0a829ad04841d0973b22b4407b95f518276b66e7 (patch)
treef91845fb7722a15f13f2337c32c6ca92f9408d7f /stm
parentb354b232c3356159f6866fab00816cd5412cd036 (diff)
cut toploop(s) out of coqtop: now they are loaded dynamically
User interface writers can drop a footop.cmxs in $(COQLIB)/toploop/ and pass -toploop footop to customize the coq main loop. A toploop must set Coqtop.toploop_init and Coqtop.toploop_run to functions respectively initializing the toploop (and parsing toploop specific arguments) and running the main loop itself. For backward compatibility -ideslave and -async-proofs worker do set the toploop to coqidetop and stmworkertop respectively.
Diffstat (limited to 'stm')
-rw-r--r--stm/stmworkertop.ml15
-rw-r--r--stm/stmworkertop.mllib1
2 files changed, 16 insertions, 0 deletions
diff --git a/stm/stmworkertop.ml b/stm/stmworkertop.ml
new file mode 100644
index 0000000000..50afd97ab5
--- /dev/null
+++ b/stm/stmworkertop.ml
@@ -0,0 +1,15 @@
+(************************************************************************)
+(* v * The Coq Proof Assistant / The Coq Development Team *)
+(* <O___,, * INRIA - CNRS - LIX - LRI - PPS - Copyright 1999-2012 *)
+(* \VV/ **************************************************************)
+(* // * This file is distributed under the terms of the *)
+(* * GNU Lesser General Public License Version 2.1 *)
+(************************************************************************)
+
+let () = Coqtop.toploop_init := (fun args ->
+ Flags.make_silent true;
+ Stm.slave_init_stdout ();
+ args)
+
+let () = Coqtop.toploop_run := Stm.slave_main_loop
+
diff --git a/stm/stmworkertop.mllib b/stm/stmworkertop.mllib
new file mode 100644
index 0000000000..78b54b2ea9
--- /dev/null
+++ b/stm/stmworkertop.mllib
@@ -0,0 +1 @@
+Stmworkertop