从脚本启用REPL power user mode(:power)

Y.K*_*.K. 6 interpreter scala read-eval-print-loop

我试图动态地将字符串解释为Scala中的命令.为此,根据我的理解,我需要在处于电源模式时调用intp.interpret("string")(intp代表当前解释器和string我的命令),对吧?

但是,我的问题是我想从脚本中做到这一点.因此,我正在寻找一种从脚本内部切换到超级用户模式的方法,然后调用intp.interpret.

有没有办法从脚本文件内部切换?

Mil*_*bin 4

如果您从 bash 脚本或类似脚本调用 REPL,那么您可以通过系统属性:power立即启用模式,scala.repl.power

miles@lewis$ scala -Dscala.repl.power
Welcome to Scala version 2.9.2 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_05)
Type in expressions to have them evaluated.
Type :help for more information.

scala>
[info] compiler init time: 2.186 s.

scala>
** Power User mode enabled - BEEP BOOP SPIZ **
** :phase has been set to 'typer'.          **
** scala.tools.nsc._ has been imported      **
** global._ and definitions._ also imported **
** Try  :help,  vals.<tab>,  power.<tab>    **

scala> 
[info] total init time: 5.105 s.

scala>
Run Code Online (Sandbox Code Playgroud)