我有一个函数,带有可变数量的参数,像这样:
def myfun(*args)
# ...
end
所有args都是相同的类型(
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/