Clojure 指定自然数

标签 clojure clojure.spec

一个natural number是一个非负整数。您如何用 Clojure Spec 来表达这一点?

最佳答案

这已经是 1.9 中的谓词函数,它匹配固定精度非负整数:

(s/valid? nat-int? 1)
; true

但请注意,这匹配任意精度整数,例如bigint:

(s/valid? nat-int? (bigint 1))
; false

关于Clojure 指定自然数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43348814/

相关文章:

clojure:根据值的序列划分序列

java - 从没有破折号的字符串创建 UUID

clojure.spec 替代类型集合

clojure - Clojure 的规范与 Wadler 的主张相同吗?

testing - 我怎样才能找出为什么给出错误的规范不会导致我的测试失败?

generics - 在 clojure 中为泛型类提供类型提示

clojure - 如何在Clojure中使用expt函数?

emacs - 编辑后如何恢复 'fancy lambdas'

clojure - 在 Clojure 规范中将 s/and 与 s/or 组合

clojurescript - 将宏应用于向量