src/Pure/System/isabelle_process.scala
changeset 56385 76acce58aeab
parent 55618 995162143ef4
child 56387 d92eb5c3960d
--- a/src/Pure/System/isabelle_process.scala	Thu Apr 03 10:51:24 2014 +0200
+++ b/src/Pure/System/isabelle_process.scala	Thu Apr 03 13:46:18 2014 +0200
@@ -16,63 +16,10 @@
 import Actor._
 
 
-object Isabelle_Process
-{
-  /* messages */
-
-  sealed abstract class Message
-
-  class Input(name: String, args: List[String]) extends Message
-  {
-    override def toString: String =
-      XML.Elem(Markup(Markup.PROVER_COMMAND, List((Markup.NAME, name))),
-        args.map(s =>
-          List(XML.Text("\n"), XML.elem(Markup.PROVER_ARG, YXML.parse_body(s)))).flatten).toString
-  }
-
-  class Output(val message: XML.Elem) extends Message
-  {
-    def kind: String = message.markup.name
-    def properties: Properties.T = message.markup.properties
-    def body: XML.Body = message.body
-
-    def is_init = kind == Markup.INIT
-    def is_exit = kind == Markup.EXIT
-    def is_stdout = kind == Markup.STDOUT
-    def is_stderr = kind == Markup.STDERR
-    def is_system = kind == Markup.SYSTEM
-    def is_status = kind == Markup.STATUS
-    def is_report = kind == Markup.REPORT
-    def is_syslog = is_init || is_exit || is_system || is_stderr
-
-    override def toString: String =
-    {
-      val res =
-        if (is_status || is_report) message.body.map(_.toString).mkString
-        else Pretty.string_of(message.body)
-      if (properties.isEmpty)
-        kind.toString + " [[" + res + "]]"
-      else
-        kind.toString + " " +
-          (for ((x, y) <- properties) yield x + "=" + y).mkString("{", ",", "}") + " [[" + res + "]]"
-    }
-  }
-
-  class Protocol_Output(props: Properties.T, val bytes: Bytes)
-    extends Output(XML.Elem(Markup(Markup.PROTOCOL, props), Nil))
-  {
-    lazy val text: String = bytes.toString
-  }
-}
-
-
 class Isabelle_Process(
-    receiver: Isabelle_Process.Message => Unit = Console.println(_),
+    receiver: Prover.Message => Unit = Console.println(_),
     arguments: List[String] = Nil)
 {
-  import Isabelle_Process._
-
-
   /* text representation */
 
   def encode(s: String): String = Symbol.encode(s)
@@ -90,12 +37,12 @@
 
   private def system_output(text: String)
   {
-    receiver(new Output(XML.Elem(Markup(Markup.SYSTEM, Nil), List(XML.Text(text)))))
+    receiver(new Prover.Output(XML.Elem(Markup(Markup.SYSTEM, Nil), List(XML.Text(text)))))
   }
 
   private def protocol_output(props: Properties.T, bytes: Bytes)
   {
-    receiver(new Protocol_Output(props, bytes))
+    receiver(new Prover.Protocol_Output(props, bytes))
   }
 
   private def output(kind: String, props: Properties.T, body: XML.Body)
@@ -104,7 +51,7 @@
 
     val main = XML.Elem(Markup(kind, props), Protocol.clean_message(body))
     val reports = Protocol.message_reports(props, body)
-    for (msg <- main :: reports) receiver(new Output(xml_cache.elem(msg)))
+    for (msg <- main :: reports) receiver(new Prover.Output(xml_cache.elem(msg)))
   }
 
   private def exit_message(rc: Int)
@@ -382,7 +329,7 @@
 
   def protocol_command(name: String, args: String*)
   {
-    receiver(new Input(name, args.toList))
+    receiver(new Prover.Input(name, args.toList))
     protocol_command_raw(name, args.map(Bytes(_)): _*)
   }