欢迎!有关这种方式的一些更多信息,请参阅关于页面。

0
clj -Sdeps '{:deps {org.clojure/clojurescript {:mvn/version "RELEASE"}}}'
Clojure 1.10.3
user=> (require '[cljs.analyzer.api :as api])
nil
user=> (source api/ns-publics)
Execution error at user/eval138 (REPL:1).
Invalid token: ::ana/namespaces
user=>

不确定这是否是一个已知问题。

ns-publics 的来源

(defn ns-publics
  "Given a namespace return all the public var analysis maps. Analagous to
  clojure.core/ns-publics but returns var analysis maps not vars."
  ([ns]
   (ns-publics env/*compiler* ns))
  ([state ns]
   {:pre [(symbol? ns)]}
   (->> (merge
          (get-in @state [::ana/namespaces ns :macros])
          (get-in @state [::ana/namespaces ns :defs]))
        (remove (fn [[k v]] (:private v)))
        (into {}))))

1 个答案

+1
 
最佳答案

我认为我们可能已经在某处记录了这个问题,这与源宏在读取时间没有ns上下文来解析自动解析的关键词有关,现在我们有了可插拔的解析器,这肯定可以修复。

...