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