2
О персонализировать Scala REPL для внутреннего DSL, от create-your-custom-scala-replScala РЕПЛ персонализация для внутреннего DSL
import scala.tools.nsc.Settings
import scala.tools.nsc.interpreter.ILoop
object TestConsole extends App {
val settings = new Settings
settings.usejavacp.value = true
settings.deprecation.value = true
new SampleILoop().process(settings)
}
class SampleILoop extends ILoop {
override def prompt = "myDSL $ "
addThunk {
intp.beQuietDuring {
intp.addImports("my.dsl._")
}
}
}
заметил, что addThunk
не поддерживается в 2.11. *.
Таким образом, как загрузить myDSL.jar
или import my.dsl._
в персонализированный REPL?
Большое спасибо; как бы содержимое 'myrepl.init' было заменено' intp.addImports ("my.dsl ._") '? – elm
Каждая строка файла запускается как 'intp.interpret'; похоже, что эти команды автозапуска идут в истории команд. –
Пробная команда 'scala TestConsole.jar -cp myDSL.jar'; также в 'myrepl.init' добавлен' import my.dsl._' еще не смог получить классы, связанные с DSL ... – elm