src/Pure/System/scala.scala
changeset 78767 aa67309a7960
parent 78606 7bfac764a715
child 82142 508a673c87ac
equal deleted inserted replaced
78766:5578341489cb 78767:aa67309a7960
   287       case Some(fun) =>
   287       case Some(fun) =>
   288         Exn.capture { fun.invoke(session, args) } match {
   288         Exn.capture { fun.invoke(session, args) } match {
   289           case Exn.Res(null) => (Tag.NULL, Nil)
   289           case Exn.Res(null) => (Tag.NULL, Nil)
   290           case Exn.Res(res) => (Tag.OK, res)
   290           case Exn.Res(res) => (Tag.OK, res)
   291           case Exn.Exn(Exn.Interrupt()) => (Tag.INTERRUPT, Nil)
   291           case Exn.Exn(Exn.Interrupt()) => (Tag.INTERRUPT, Nil)
   292           case Exn.Exn(e) => (Tag.ERROR, List(Bytes(Exn.message(e))))
   292           case Exn.Exn(ERROR(msg)) => (Tag.ERROR, List(Bytes(msg)))
       
   293           case Exn.Exn(e) => (Tag.FAIL, List(Bytes(Exn.message(e))))
   293         }
   294         }
   294       case None => (Tag.FAIL, List(Bytes("Unknown Isabelle/Scala function: " + quote(name))))
   295       case None => (Tag.FAIL, List(Bytes("Unknown Isabelle/Scala function: " + quote(name))))
   295     }
   296     }
   296 
   297 
   297 
   298