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

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

0
Spec
依赖于 every-impl 的规范(例如 every、coll-of 等)在传递一个记录时可能会崩溃。例如

{code:title=REPL 会话|borderStyle=solid}
> (require ['clojure.spec.alpha :as 's])

> (s/def ::coll-any (s/coll-of any?))
> (defrecord Pair [first second])

> (s/valid? ::coll-any 3)
false

> (s/valid? ::coll-any {:a 1 :b 2})
true

> (s/valid? ::coll-any (Pair. 1 2))
执行错误(UnsupportedOperationException)在用户.Pair/empty (REPL:1)。
无法创建空:用户.Pair

1 个回答

0
参考资料:https://clojure.atlassian.net/browse/CLJ-2481(由 alex+import 报告)
...