الفرق بين المراجعتين ل"Ruby/Method/index"

من موسوعة حسوب
< Ruby‏ | Method
اذهب إلى التنقل اذهب إلى البحث
سطر 24: سطر 24:
 
==انظر أيضا==
 
==انظر أيضا==
 
* التابع <code>[[Ruby/Method/arity|arity]]</code>: يعيد  مؤشرا لعدد الوسائط المقبولة من قبل التابع.
 
* التابع <code>[[Ruby/Method/arity|arity]]</code>: يعيد  مؤشرا لعدد الوسائط المقبولة من قبل التابع.
 +
* التابع <code>[[Ruby/Method/call|call]]</code>: ييستدعي <code>call</code> كتلة التابع الذي استٌدعي معه، ويضبط وسائط الكتلة عند القيم المعطاة <code>params</code> باستخدام صياغة مشابهة لصياغة استدعاء التوابع. ثم يعيد قيمة آخر تعبير تم تقييمه في الكتلة.
  
 
==مصادر==
 
==مصادر==
 
*[http://ruby-doc.org/core-2.5.1/Method.html#method-i-5B-5D <nowiki>قسم  المعامل []‎ في الصنف Method‎ في توثيق روبي الرسمي.</nowiki>]
 
*[http://ruby-doc.org/core-2.5.1/Method.html#method-i-5B-5D <nowiki>قسم  المعامل []‎ في الصنف Method‎ في توثيق روبي الرسمي.</nowiki>]

مراجعة 19:54، 25 أكتوبر 2018

يستدعي معامل الفهرسة[] الكتلة البرمجية للتابع، ويضبط قيم وسائط الكتلة عند القيم المعطاة params باستخدام صياغة مشابهة لاستدعاء التوابع. ثم يعيد قيمة آخر تعبير تم تقييمه في الكتلة.

لاحظ أن ‎prc.()‎ يستدعي prc.call()‎ مع تمرير الوسائط المعطاة. وهي صياغة مختصرة لإخفاء التابع "call".

بالنسبة للكائنات procs التي تم إنشاؤها باستخدام lambda أو ‎->()‎‎‎، قسيُطلق خطأ إذا كان عدد الوسائط الممررة إلى proc غير صحيح. بالنسبة لكائنات proc التي تم إنشاؤها باستخدام Proc.new أو Kernel.proc ، فسيتم تجاهل الوسائط الإضافية بصمت، وتُعطى للوسائط غير المُمررة القيمة nil.

انظر أيضا Proc#lambda?.

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

prc[params,...]   obj

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

يعيد قيمة آخر تعبير تم تقييمه في الكتلة.

أمثلة

مثال على استخدام المعامل[]‎:

a_proc = Proc.new {|scalar, *values| values.map {|value| value*scalar } }
a_proc.call(9, 1, 2, 3)    #=> [9, 18, 27]
a_proc[9, 1, 2, 3]         #=> [9, 18, 27]
a_proc.(9, 1, 2, 3)        #=> [9, 18, 27]
a_proc.yield(9, 1, 2, 3)   #=> [9, 18, 27]‎

انظر أيضا

  • التابع arity: يعيد مؤشرا لعدد الوسائط المقبولة من قبل التابع.
  • التابع call: ييستدعي call كتلة التابع الذي استٌدعي معه، ويضبط وسائط الكتلة عند القيم المعطاة params باستخدام صياغة مشابهة لصياغة استدعاء التوابع. ثم يعيد قيمة آخر تعبير تم تقييمه في الكتلة.

مصادر