Ruby/Справочник/Proc: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 60:
===Proc#arity===
----
<ttsource lang=ruby>prc.arity #=&gt;> fixnum</ttsource>
----
Возвращает количество аргументов, которые могут быть восприняты блоком. Если блок объявлен без указания аргументов, то возвращает 0. Если число агрументов точно равно n, то возвращает n. Если блок имеет оциональный аргумент, то возвращает -n-1, где n --- количество обязательных аргументов. Блок <tt>proc</tt> без аргументов обычно содержит <tt>||</tt> вместо аргументов.
<codesource lang=ruby>Proc.new {}.arity #=&gt;> 0
Proc.new {||}.arity #=> 0
Proc.new {|a|}.arity #=> 1
Proc.new {|a,b|}.arity #=> 2
Proc.new {|a,b,c|}.arity #=> 3
Proc.new {|*a|}.arity #=> -1
Proc.new {|a,*b|}.arity #=> -2</codesource>
 
===Proc#binding===