不确定这是否有答案,但希望有人知道。我正在尝试的是在Ruby 1.8.7中获取一个Method的可选参数数量。 Method#arity
将不起作用,因为它返回-n-1
,其中n
是方法所需参数的数量。我需要的是可选参数的数量?例如Ruby 1.8.7中一种方法的可选参数数量
def foo(a,b,c=4,d=3)
# ...
end
如何识别有2可选参数?请记住,这是的Ruby 1.8.7
UPDATE
道歉的问题是不明确的,我需要调用方法前要知道的可选参数数量。例如
method_def = self.instance_method(:foo)
# check for number of args
# call method if it meets some kind of criteria
从我在网上阅读的内容来看,你可能是对的。我会再等一等,看看有没有人有解决方法。 –
所以,我猜那个绿色的复选框意味着你已经放弃了;-) –
邑,在这一个上有一个非常强烈的共识:)我将不得不猴子补丁...但是,哦,以及有时需要发生。 –