lazy val mirror: universe.Mirror = universe.runtimeMirror(getClass.getClassLoader)
lazy val toolBox = mirror.mkToolBox()
def compile[I, O](code: String): (I => O) = {
val tree = toolBox.parse(code)
val res = toolBox.compile(tree).apply()
res.asInstanceOf[(I => O)]
}
def eval(code: String): Any = {
val tree = toolBox.parse(code)
toolBox.eval(tree)
}
}
Ну это получается в качестве строки метод или можно лябду передать?
Обсуждают сегодня