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

欢迎!请参阅关于页面了解更多关于如何使用本站的信息。

0
Spec

如在该线程中所述(https://groups.google.com/forum/#!topic/clojure/i8Rz-AnCoa8),
`s/keys`
并不验证其内提到的规格是有效的规格。

一个建议的解决方案是单独编写代码来检查注册表,并警告未声明的规格。该代码的草稿在https://gist.github.com/stuarthalloway/f4c4297d344651c99827769e1c3d34e9提供。

虽然一般方法不错,但我相信它不适用于包含“keys”规格的多规格。
`s/form`
在多规格上返回规格是多规格(这是合理的),但没有方法可以让客户端访问挑选指定数据的方法规格的代码。

在上述记录中提供了另一个解决方案,但由于它依赖于
`resolve`
,在Clojurescript上不会工作。

我认为
`s/form`
在此案中表现正确,但有一个额外的功能将很有用,它可以根据多规格返回函数或数据,可以用来探索当前实现。

1 答案

0
参考:https://clojure.atlassian.net/browse/CLJ-2294(由 bbrinck 报告)
...