gpt4 book ai didi

clojure - 如何指定一个在 Clojure 中没有参数的函数?

转载 作者:行者123 更新时间:2023-12-04 11:59:07 26 4
gpt4 key购买 nike

我想为我的一个小型项目编写一些规范,并担心如何为不提供任何参数的函数编写规范。

我想为这个特定功能编写规范:

(defn get-total-pages []
(int (Math/ceil (/ (count (get-posts)) posts-per-page))))

它计算总页数假设 posts-per-page在一页上发帖。该函数本身运行良好,但在向其添加以下规范时:
(s/fdef get-total-pages
:args ()
:ret int?)

我不能执行任何 stest/check在没有警告的情况下:
:clojure.spec.test.check/ret {:result #error {
:cause "Unable to construct gen at: [] for: clojure.spec.alpha$spec_impl$reify__2059@1232bda3"
...

不使用时 :args映射这一切,规范告诉我 :args丢失了,所以这里是我的最后一个问题:如何指定不提供参数的函数?

最佳答案

:args无参数函数的列表可以指定为空 s/cat规范:

(s/fdef get-total-pages
:args (s/cat)
:ret int?)

关于clojure - 如何指定一个在 Clojure 中没有参数的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61683700/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com