如何列出ClojureScripts名称空间的函数/变量?
这是一个与Clojure
等效的问题,但提到的解决方案对我不起作用。
答案 0 :(得分:1)
clojure.repl/dir
适用于最新的ClojureScript(1.7.228)
答案 1 :(得分:1)
ns-interns似乎可以满足您的需求。如果需要当前名称空间的vars / fns,可以将*ns*与之结合使用。
用法:
(keys (ns-interns 'my-ns)) ;; All defined variables/functions of an arbitrary evaluated namespace
(keys (ns-interns *ns*)) ;; All defined variables/functions of the current namespace
请注意, ns 的值在运行时间和编译时间上有所不同,并且使用CIDER / REPL也会影响当前设置的ns。例如,后者在我的lein repl
中有效,但在我的CIDER副本中无效。这个answer有可能解决该问题。
答案 2 :(得分:0)
现在我正在做:
(.keys js/Object my.ns)
因为它看起来像命名空间是一个js对象。