--- a/src/Pure/System/scala.scala Thu Apr 07 20:15:58 2022 +0200
+++ b/src/Pure/System/scala.scala Fri Apr 08 09:58:49 2022 +0200
@@ -112,15 +112,11 @@
}
}
- def toplevel(interpret: Boolean, source: String): List[String] = {
+ def toplevel(source: String): List[String] = {
val out = new StringWriter
val interp = interpreter(new PrintWriter(out))
val marker = '\u000b'
- val ok =
- interp.withLabel(marker.toString) {
- if (interpret) interp.interpret(source) == Results.Success
- else (new interp.ReadEvalPrint).compile(source)
- }
+ val ok = interp.withLabel(marker.toString) { (new interp.ReadEvalPrint).compile(source) }
out.close()
val Error = """(?s)^\S* error: (.*)$""".r
@@ -135,15 +131,9 @@
object Toplevel extends Fun_String("scala_toplevel") {
val here = Scala_Project.here
- def apply(arg: String): String = {
- val (interpret, source) =
- YXML.parse_body(arg) match {
- case Nil => (false, "")
- case List(XML.Text(source)) => (false, source)
- case body => import XML.Decode._; pair(bool, string)(body)
- }
+ def apply(source: String): String = {
val errors =
- try { Compiler.context().toplevel(interpret, source) }
+ try { Compiler.context().toplevel(source) }
catch { case ERROR(msg) => List(msg) }
locally { import XML.Encode._; YXML.string_of_body(list(string)(errors)) }
}