التابع UnboundMethod.arity
في روبي
< Ruby | UnboundMethod
يعيد المعامل arity
مؤشرًا لعدد الوسائط المقبولة من قبل تابع.
البنية العامة
arity → integer
القيمة المعادة
يعاد عدد صحيحً غير سالب للتوابع التي تأخذ عددًا محددًا من الوسائط. بالنسبة لتوابع روبي التي تأخذ عددًا متغيرًا من الوسائط، يًعاد العدد -n-1
، حيث n
هو عدد الوسائط المطلوبة. الوسائط المسماة (Keyword arguments) ستُعيد وسيطًا إضافيًا واحدًا، وسيكون ذلك الوسيط إلزاميًّا إن كان أيٌّ من الوسائط المسماة كذلك. بالنسبة للتوابع المكتوبة بلغة C، سيُعاد العدد -1
إن كان استدعاء تلك التوابع يأخذ عددًا متغيرًا من الوسائط.
أمثلة
مثال على استخدام التابع arity
:
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
انظر أيضًا
- التابع
hash
: يعيد رمز تجزئة التابع.