如何为使用class_eval定义的方法添加RDoc文档?

时间:2012-08-13 02:27:14

标签: ruby metaprogramming rdoc

我正在使用class_eval更简洁地定义一堆重复方法,如下所示:

%w{greasy chunky bacon}.product(%w{flying sky poodle}).each do |a,b|
  class_eval "def #{a}_#{b}; do_something; end"
end

我希望所有生成的方法都包含在RDoc文档中。是否有RDoc指令“手动”将方法添加到类的方法列表中?我找不到一个。

1 个答案:

答案 0 :(得分:7)

请参阅RDoc documentation for RDoc::Parser::Ruby元编程方法隐藏方法和属性部分。

在你的情况下,你会做类似的事情:

##
# :method: greasy_flying
# Makes grease fly.

##
# :method: chunky_poodle
# This is a really gruesome method. Ewww!

等等。