Scala - получить список связанных переменных?
Есть ли способ получить список связанных переменных в scala?
Ответы
Ответ 1
В режиме :power
в 2.9, 2.10 и 2.11 вы можете intp.visibleTermNames.sorted.foreach(println)
получить все или intp.definedTerms.foreach(println)
только для того, что вы создали.
В 2.10 всегда отображается $intp
(режим питания или нет), поэтому $intp.definedTerms.foreach(println)
будет печатать список в неэнергетическом режиме.
Попробуйте intp.
+ вкладку в режиме питания, чтобы просмотреть все доступные методы. (Символы, начинающиеся с $
, не имеют возможности завершения табуляции.)
Ответ 2
В Scala 2.10 REPL можно получить доступ к экземпляру IMain
, связанному с REPL. Он доступен как $intp
. Похоже, что с этим можно глубоко проверить состояние REPL.
Например, $intp.unqualifiedIds
может быть вам полезен.
Ответ 3
В REPL вы можете использовать команду :dump
для печати внутреннего состояния REPL. Одна из первых строк должна выглядеть примерно так:
Names: $ires0 $ires1 $ires2 $ires3 $ires4 $ires5 $ires6 $ires7 $r x z
Это все переменные, классы и синглтоны, определенные вами в этом сеансе.
Я не знаю, как показывать только переменные.
изменить
перед тем, как команда :dump
доступна, вам необходимо ввести режим питания с помощью :power