1

我正在记录一个项目,基本上我有类似以下内容:

def foo
  return bar(__method__)
end

def bar (method)
 return method.to_s + 'somestring'
end

我正在设置多种方法,类似于我在哪里实现 foo 他们正在返回 bar 的返回。一个例子如下:

# The descriptions for foo0...
# @return [String] the method name concatenated with somestring
def foo0
  return bar(__method__)
end
# The descriptions for foo1...
# @return [String] the method name concatenated with somestring
def foo1
  return bar(__method__)
end

# The descriptions for bar...
# @return [String] the method name concatenated with somestring
def bar (method)
 return method.to_s + 'somestring'
end

但是假设我将bar返回的内容更改为整数,那么我的文档不正确。我熟悉在 YARD 中记录 DSL,但是在描述另一种方法时,您如何指定#bar@return.type方法的返回类型。bar我所指的一个例子如下:

# The descriptions for foo0...
# @return [#bar@return.type] the method name concatenated with somestring
def foo0
  return bar(__method__)
end
# The descriptions for foo1...
# @return [#bar@return.type] the method name concatenated with somestring
def foo1
  return bar(__method__)
end

# The descriptions for bar...
# @return [String] the method name concatenated with somestring
def bar (method)
 return method.to_s + 'somestring'
end

最终,我想要完成的是记录我的代码,而不必定义像返回类型这样的绝对值,这取决于另一种方法的定义。

更新:我发现您可以调用# @return (see #bar)并让它列出返回或与foo方法相同的bar方法,但我无法确定如何简单地获取正在返回的类型和/或重载返回的描述bar带有自定义描述foo

4

1 回答 1

1

正如您所发现的,您应该使用@return (see #bar)@return标签从#bar 逐字复制到其他文档字符串。注意:它也会复制描述文本。没有办法只插入方法的类型。不过,在您的具体示例中,您似乎不需要它。

于 2012-04-27T04:48:43.770 回答