2024 Clojure状态调查!中分享您的看法。

欢迎!有关该页面如何工作的更多信息,请参阅关于页面。

+3
tools.reader

使用新的#:default.namespace{,,,}语法编写的map不在元数据中附加文件位置。

给定的这段代码

(require '[clojure.tools.reader :as reader])
(require '[clojure.tools.reader.reader-types :as reader-types])

(defn sample [s]
  (with-open [r (java.io.StringReader. s)]
    (meta (reader/read (reader-types/indexing-push-back-reader (reader-types/push-back-reader r) 1)))))

这个edn字面量无法以位置元数据解析

(sample "#:ns{ :key :val }") ; => nil

与这两个不同,它们像预期那样获得了位置元数据

(sample "{ :key :val }")     ; => {:line 1, :column 1, :end-line 1, :end-column 14}
(sample "{ :ns/key val }")   ; => {:line 1, :column 1, :end-line 1, :end-column 16}

2 个答案

+1

选中
尼古拉立即进行了修复并发布了修订版v1.3.6。感谢你们两位!
0

注意:由于我最终 切换到edamame,这个错误对我来说不再是紧迫的问题,因为edamame没有这个错误,但Alex提到 他可能还会提交一个工单。

...