【发布时间】:2011-09-27 20:14:56
【问题描述】:
如果满足某些条件,我想重新定义库中函数的行为,否则执行原始函数。示例:
class LibraryToExtend
def FunctionToExtend(argument)
if argument == something
do_something_new
else
do_what_the_function_did_originally
end
end
end
我不认为super 在这种情况下会起作用,因为我正在覆盖函数,而不是扩展它。
【问题讨论】:
-
没有理由拒绝投票,就像 dup 一样接近(尽管我更喜欢我的答案,而不是那个问题的“英里长”答案)
标签: ruby metaprogramming