gpt4 book ai didi

clojure - 在 Clojure 中使用函数生成文档字符串

转载 作者:行者123 更新时间:2023-12-04 00:08:26 24 4
gpt4 key购买 nike

我希望能够以编程方式为我在 clojure 中的一个函数定义一个文档字符串。

例如,我希望能够做这样的事情:

(defn my-function
(str "Here are some numbers " (range 10))
[]
(println "This function does nothing right now."))

但是,当我尝试这样做时,我得到“参数 decleration str 应该是一个向量”。这在clojure中是不可能的还是有一些偷偷摸摸的方法来做到这一点?以编程方式生成部分文档字符串对我很有用。

最佳答案

是的,这绝对是可能的。您在这里遇到的事情是 defn (或者更确切地说,它扩展为的 def 特殊形式)将文档字符串附加到符号 iff 位于第二位的参数是一个字符串。

您可以通过自己设置 :doc 元数据来规避此问题。

(defn ^{:doc (apply str "Here are some numbers " (range 10))} my-function
[]
(println "This function does nothing right now."))

或者可能通过编写自己的宏 - 但我认为以上是最直接的方法。

关于clojure - 在 Clojure 中使用函数生成文档字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23402365/

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