--- a/src/Pure/PIDE/session.scala Mon May 05 11:53:07 2014 +0200
+++ b/src/Pure/PIDE/session.scala Mon May 05 15:17:07 2014 +0200
@@ -98,6 +98,7 @@
abstract class Protocol_Handler
{
+ def start(prover: Prover): Unit = {}
def stop(prover: Prover): Unit = {}
val functions: Map[String, (Prover, Prover.Protocol_Output) => Boolean]
}
@@ -122,6 +123,8 @@
val (handlers2, functions2) =
try {
val new_handler = Class.forName(name).newInstance.asInstanceOf[Protocol_Handler]
+ new_handler.start(prover)
+
val new_functions =
for ((a, f) <- new_handler.functions.toList) yield
(a, (msg: Prover.Protocol_Output) => f(prover, msg))