gpt4 book ai didi

ruby - 如何在 YARD 中记录一个参数数量可变的函数?

转载 作者:数据小太阳 更新时间:2023-10-29 07:05:38 24 4
gpt4 key购买 nike

我有一个函数,它接受可变数量的参数,如下所示:

def myfun(*args)
# ...
end

所有参数都是同一类型 (Symbol),所以现在我记录函数就像只有一个参数一样,说它可以接受多个参数,例如:

# this function doesn’t do anything
# @param [Symbol]: this argument does something, you can add more symbols
# if you want
def myfun(*args)
# ...
end

是否有内置方法来处理这种情况?

最佳答案

以下是有道理的,因为 args 是方法内部的一个 Array,尽管没有一个参数是这样的 Array:

# this function doesn’t do anything
#
# @param [Array<Symbol>] args these arguments do something
# @return [nil]
def myfun(*args)
# ...
end

请注意 * 已从注释中的参数名称中删除。这只是为了保持一致 - args Array,但 *args 不是。

快速搜索显示有相当多的项目使用这种风格,包括 Yard 自己的 .rb 文件(例如参见 source for initialize in Verifier class )——尽管指南中没有给出这种约定的示例。

关于ruby - 如何在 YARD 中记录一个参数数量可变的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23328411/

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