本文简要介绍ruby语言中 UnboundMethod.arity
的用法。
用法
arity → integer
返回方法接受的参数数量的指示。为采用固定数量参数的方法返回一个非负整数。对于采用可变数量参数的 Ruby 方法,返回 -n-1,其中 n 是所需参数的数量。关键字参数将被视为单个附加参数,如果任何关键字参数是强制性的,则该参数是强制性的。对于用 C 编写的方法,如果调用采用可变数量的参数,则返回 -1。
class C
def one; end
def two(a); end
def three(*a); end
def four(a, b); end
def five(a, b, *c); end
def six(a, b, *c, &d); end
def seven(a, b, x:0); end
def eight(x:, y:); end
def nine(x:, y:, **z); end
def ten(*a, x:, y:); end
end
c = C.new
c.method(:one).arity #=> 0
c.method(:two).arity #=> 1
c.method(:three).arity #=> -1
c.method(:four).arity #=> 2
c.method(:five).arity #=> -3
c.method(:six).arity #=> -3
c.method(:seven).arity #=> -3
c.method(:eight).arity #=> 1
c.method(:nine).arity #=> 1
c.method(:ten).arity #=> -2
"cat".method(:size).arity #=> 0
"cat".method(:replace).arity #=> 1
"cat".method(:squeeze).arity #=> -1
"cat".method(:count).arity #=> -1
相关用法
- Ruby UnboundMethod.original_name用法及代码示例
- Ruby UnboundMethod.bind用法及代码示例
- Ruby UnboundMethod.parameters用法及代码示例
- Ruby UnboundMethod.inspect用法及代码示例
- Ruby UnboundMethod.to_s用法及代码示例
- Ruby UnboundMethod.owner用法及代码示例
- Ruby UnboundMethod.clone用法及代码示例
- Ruby UnboundMethod类用法及代码示例
- Ruby UndefinedConversionError.source_encoding用法及代码示例
- Ruby UncaughtThrowError类用法及代码示例
- Ruby UnwindDetails.all_requirements用法及代码示例
- Ruby UnwindDetails.reversed_requirement_tree_index用法及代码示例
- Ruby UncaughtThrowError.new用法及代码示例
- Ruby UnwindDetails.unwinding_to_primary_requirement?用法及代码示例
- Ruby UnpackCommand.get_path用法及代码示例
- Ruby UnwindDetails.sub_dependencies_to_avoid用法及代码示例
- Ruby UndefinedConversionError.error_char用法及代码示例
- Ruby URI.parse用法及代码示例
- Ruby UID.change_privilege用法及代码示例
- Ruby Util.unescape用法及代码示例
- Ruby Util.url_encode用法及代码示例
- Ruby UNIXSocket.new用法及代码示例
- Ruby UNIXSocket.addr用法及代码示例
- Ruby URI模块用法及代码示例
- Ruby UNIXServer.accept用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 UnboundMethod.arity。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。