我使用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 documentation for
RDoc::Parser::Ruby
中有关元编程方法和隐藏方法及属性的部分.
在你的情况下,你会做类似的事情:
## # :method: greasy_flying # Makes grease fly. ## # :method: chunky_poodle # This is a really gruesome method. Ewww!
等等.