15

有没有办法在scala中获取绑定变量的列表?

4

3 回答 3

23

:power2.9、2.10 和 2.11 的模式下,您可以intp.visibleTermNames.sorted.foreach(println)获取所有内容,或者intp.definedTerms.foreach(println)仅获取您创建的内容。

在 2.10 中,$intp始终可见(电源模式或无),因此$intp.definedTerms.foreach(println)将在非电源模式下打印列表。

在电源模式下尝试intp.+tab 以列出所有可用的方法。(以 开头的符号$未启用制表符补全。)

于 2013-01-08T20:53:02.653 回答
6

在 Scala 2.10 REPL 中,可以访问IMain与 REPL 关联的实例。它可以作为$intp. 似乎可以用这个来深入检查 REPL 状态。

例如,$intp.unqualifiedIds可能对您有帮助。

于 2013-01-08T20:52:54.690 回答
4

在 REPL 中,您可以使用:dump命令打印 REPL 的内部状态。第一行之一应该是这样的:

Names: $ires0 $ires1 $ires2 $ires3 $ires4 $ires5 $ires6 $ires7 $r x z

这些都是您在此会话中定义的变量、类和单例。

我不知道只显示变量的方法。

编辑

:dump命令可用之前,您必须使用:power

于 2013-01-08T20:23:36.997 回答