【问题标题】:Clojure Repl - Is there a way to see what variables have been defined (and are thus available) in a REPL session?Clojure Repl - 有没有办法查看在 REPL 会话中定义了哪些变量(因此可用)?
【发布时间】:2020-12-01 18:04:30
【问题描述】:

如果我一直在使用 clojure REPL(可能一直在试验 (assoc) 或 (seq) 或 (reduce) 并创建了一些临时映射作为示例),但想打印在那次会议,有没有办法做到这一点?像 (println def) 什么的?

【问题讨论】:

    标签: clojure


    【解决方案1】:

    如果您位于 user 命名空间中,则可以使用 (dir user)。或您感兴趣的任何其他ns。这向您展示了所有def-ed 的东西。如果它不存在(它通常会在 REPL 中自动获得 useed,您可以在 clojure.repl/dir 中找到它)。

    【讨论】:

      【解决方案2】:

      ns-interns 我认为可以让你非常接近。

      user=> (def x 1)
      #'user/x
      user=> (def y 2)
      #'user/y
      user=> (ns-interns *ns*)
      {x #'user/x, y #'user/y}
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-01-31
        • 1970-01-01
        • 1970-01-01
        • 2015-10-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多