الفرق بين المراجعتين ل"Ruby/UnboundMethod/arity"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>arity‎</code> الخاص بالصنف <code>UnboundMethod</code> في روبي}}</noinclude> تصنيف: Ruby ت...')
 
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby UnboundMethod]]
 
[[تصنيف: Ruby UnboundMethod]]
يعيد التابع <code>arity</code> مؤشرا لعدد الوسائط المقبولة من قبل التابع. يعيد عددًا صحيحًا غير سالب للتوابع التي تأخذ عددًا محددًا من الوسائطا. بالنسبة لتوابع روبي التي تأخذ عددًا متغيرًا من الوسائط، يًعاد العدد -n-حيث n هو عدد الوسائط المطلوبة. الوسائط المسماة (Keyword arguments) ستُعد وسيطاً إضافيًا واحدًا، وسيكون ذلك الوسيط إلزاميا إن كان أيٌّ من الوسائط المسماة كذلك. بالنسبة للتوابع المكتوبة بلغة C، سيُعاد العدد -1 إن كانت استدعاء تلك التوابع يأخذ عددًا متغيرًا من الوسائط.
+
يعيد التابع <code>arity</code> مؤشرا لعدد الوسائط المقبولة من قبل التابع. يعيد عددًا صحيحًا غير سالب للتوابع التي تأخذ عددًا محددًا من الوسائطا. بالنسبة لتوابع روبي التي تأخذ عددًا متغيرًا من الوسائط، يًعاد العدد ‎<code>-n-1</code>، حيث <code>n</code> هو عدد الوسائط المطلوبة. الوسائط المسماة (Keyword arguments) ستُعد وسيطاً إضافيًا واحدًا، وسيكون ذلك الوسيط إلزاميا إن كان أيٌّ من الوسائط المسماة كذلك. بالنسبة للتوابع المكتوبة بلغة C، سيُعاد العدد <code>‎-1</code> إن كان استدعاء تلك التوابع يأخذ عددًا متغيرًا من الوسائط.
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">arity → integer‎</syntaxhighlight>
 
<syntaxhighlight lang="ruby">arity → integer‎</syntaxhighlight>
 
==القيمة المُعادة==
 
==القيمة المُعادة==
 +
يعيد التابع <code>arity</code> مؤشرا لعدد الوسائط المقبولة من قبل التابع.
 +
 
==أمثلة==
 
==أمثلة==
 
مثال على استخدام التابع <code>arity‎</code>:
 
مثال على استخدام التابع <code>arity‎</code>:
سطر 37: سطر 39:
 
"cat".method(:count).arity    #=> -1‎</syntaxhighlight>
 
"cat".method(:count).arity    #=> -1‎</syntaxhighlight>
 
==انظر أيضا==
 
==انظر أيضا==
* التابع <code>[[Ruby/UnboundMethod/equality_operator|==]]</code>: يكون كائنان من النوع UnboundMethod متساويين إن كانا مرتبطين بنفس الكائن، وكانا يشيران إلى نفس تعريف التابع، وكان لهما نفس الصنف أو الوحد المالكة.
+
* التابع <code>[[Ruby/UnboundMethod/hash|hash]]</code>: يعيد رمز تجزئة التابع.
* التابع <code>[[Ruby/UnboundMethod/bind|bind]]</code>: يربط التابع <code>bind</code> [[Ruby/UnboundMethod|المتعقب]] <code>umeth</code> بالكائن <code>obj</code> (انظر فقرة البنية العامة). إذا كان <code>Klass</code> هو الصنف الذي استُنسخ منه [[Ruby/UnboundMethod|المتعقب]] <code>umeth</code>، فيجب أن يساوي التعبير <code>obj.kind_of?(Klass)</code> القيمة true.
 
 
==مصادر==
 
==مصادر==
 
*[http://ruby-doc.org/core-2.5.1/UnboundMethod.html#method-i-arity قسم  التابع arity‎ في الصنف UnboundMethod‎ في توثيق روبي الرسمي.]
 
*[http://ruby-doc.org/core-2.5.1/UnboundMethod.html#method-i-arity قسم  التابع arity‎ في الصنف UnboundMethod‎ في توثيق روبي الرسمي.]

مراجعة 01:14، 8 نوفمبر 2018

يعيد التابع arity مؤشرا لعدد الوسائط المقبولة من قبل التابع. يعيد عددًا صحيحًا غير سالب للتوابع التي تأخذ عددًا محددًا من الوسائطا. بالنسبة لتوابع روبي التي تأخذ عددًا متغيرًا من الوسائط، يًعاد العدد ‎-n-1، حيث n هو عدد الوسائط المطلوبة. الوسائط المسماة (Keyword arguments) ستُعد وسيطاً إضافيًا واحدًا، وسيكون ذلك الوسيط إلزاميا إن كان أيٌّ من الوسائط المسماة كذلك. بالنسبة للتوابع المكتوبة بلغة C، سيُعاد العدد ‎-1 إن كان استدعاء تلك التوابع يأخذ عددًا متغيرًا من الوسائط.

البنية العامة

arity  integer

القيمة المُعادة

يعيد التابع arity مؤشرا لعدد الوسائط المقبولة من قبل التابع.

أمثلة

مثال على استخدام التابع 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: يعيد رمز تجزئة التابع.

مصادر