الفرق بين المراجعتين لصفحة: «Ruby/Method»
لا ملخص تعديل |
لا ملخص تعديل |
||
سطر 12: | سطر 12: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==توابع | ==توابع الكائن العامة (Public Instance Methods)== | ||
===[[Ruby/Method/ | === [[Ruby/Method/equal|التابع ==]]=== | ||
يكاون كائنان من النوع Method متساويين إن كانا مرتبطين بنفس الكائن، وكانا يشيران إلى نفس تعريف التابع، وكان لهما نفس الصنف أو الوحدة (module) المالكة. | يكاون كائنان من النوع <code>Method</code> متساويين إن كانا مرتبطين بنفس الكائن، وكانا يشيران إلى نفس تعريف التابع، وكان لهما نفس الصنف أو الوحدة (module) المالكة. | ||
===[[Ruby/Method/ | === [[Ruby/Method/equal-3D|التابع ===]]=== | ||
يستدعي | يستدعي كتلة التابع مع تمرير المعامل <code>obj</code> كوسيط لـ <code>proc</code>. | ||
===[[Ruby/Method/ | === [[Ruby/Method/index|التابع []]]=== | ||
يستدعي الكتلة البرمجية للتابع، ويضبط قيم وسائط الكتلة عند القيم المعطاة | يستدعي الكتلة البرمجية للتابع، ويضبط قيم وسائط الكتلة عند القيم المعطاة. | ||
===[[Ruby/Method/arity | التابع arity]]=== | ===[[Ruby/Method/arity | التابع arity]]=== | ||
يعيد مؤشرا لعدد الوسائط المقبولة من قبل التابع | يعيد مؤشرا لعدد الوسائط المقبولة من قبل التابع. | ||
===[[Ruby/Method/call | التابع call]]=== | ===[[Ruby/Method/call | التابع call]]=== | ||
يستدعي كتلة التابع، ويضبط وسائط الكتلة عند القيم المعطاة params باستخدام صياغة مشابهة لصياغة استدعاء التوابع | يستدعي كتلة التابع، ويضبط وسائط الكتلة عند القيم المعطاة params باستخدام صياغة مشابهة لصياغة استدعاء التوابع. | ||
===[[Ruby/Method/clone | التابع clone]]=== | ===[[Ruby/Method/clone | التابع clone]]=== | ||
يعيد نسخة من هذا التابع. | يعيد نسخة من هذا التابع. | ||
===[[Ruby/Method/curry | التابع curry]]=== | ===[[Ruby/Method/curry | التابع curry]]=== | ||
يعيد كتلة proc مُجزّءة (curried proc) انطلاقا من التابع الذي استُدعيت معه | يعيد كتلة proc مُجزّءة (curried proc) انطلاقا من التابع الذي استُدعيت معه. | ||
===[[Ruby/Method/eql-3F | التابع eql?]]=== | ===[[Ruby/Method/eql-3F | التابع eql?]]=== | ||
يكون كائنان من النوع Method متساويتين إذا كانا مرتبطين بنفس الكائن، ويرجعان إلى نفس التعريف، وكانا مملوكين من قبل نفس الصنف أو الوحدة. | يكون كائنان من النوع <code>Method</code> متساويتين إذا كانا مرتبطين بنفس الكائن، ويرجعان إلى نفس التعريف، وكانا مملوكين من قبل نفس الصنف أو الوحدة. | ||
===[[Ruby/Method/hash | التابع hash]]=== | ===[[Ruby/Method/hash | التابع hash]]=== | ||
يعيد رمز التكويد (hash) المقابل لكائن Method الذي استُدعي معه. | يعيد رمز التكويد (hash) المقابل لكائن <code>Method</code> الذي استُدعي معه. | ||
===[[Ruby/Method/inspect | التابع inspect]]=== | ===[[Ruby/Method/inspect | التابع inspect]]=== | ||
يعيد اسم التابع الأصلي (underlying method). | يعيد اسم التابع الأصلي (underlying method). | ||
سطر 38: | سطر 38: | ||
يعيد الاسم الأصلي للتابع الذي استُدعي معه. | يعيد الاسم الأصلي للتابع الذي استُدعي معه. | ||
===[[Ruby/Method/owner | التابع owner]]=== | ===[[Ruby/Method/owner | التابع owner]]=== | ||
يعيد الصنف أو الوحدة (module) التي تعرف التابع . | يعيد الصنف أو الوحدة (module) التي تعرف التابع. | ||
===[[Ruby/Method/parameters | التابع parameters]]=== | ===[[Ruby/Method/parameters | التابع parameters]]=== | ||
يعيد معلومات عن وسائط التابع . | يعيد معلومات عن وسائط التابع . | ||
===[[Ruby/Method/receiver | التابع receiver]]=== | ===[[Ruby/Method/receiver | التابع receiver]]=== | ||
يعيد المستقبل المتلقي (bound receiver) لكائن Method . | يعيد المستقبل المتلقي (bound receiver) لكائن <code>Method</code> . | ||
===[[Ruby/Method/source_location | التابع source_location]]=== | ===[[Ruby/Method/source_location | التابع source_location]]=== | ||
يعيد اسم الملف المصدر لروبي ورقم السطر الذي يحتوي هذا التابع، أو يعيد nil إن لم يُعرّف هذا التابع في روبي (أي أصلي). | يعيد اسم الملف المصدر لروبي ورقم السطر الذي يحتوي هذا التابع، أو يعيد <code>nil</code> إن لم يُعرّف هذا التابع في روبي (أي أصلي). | ||
===[[Ruby/Method/super_method | التابع super_method]]=== | ===[[Ruby/Method/super_method | التابع super_method]]=== | ||
يعيد كائنا من النوع <code>Method</code> للصنف الأب (superclass)، | يعيد كائنا من النوع <code>Method</code> للصنف الأب (superclass)، | ||
===[[Ruby/Method/to_proc | التابع to_proc]]=== | ===[[Ruby/Method/to_proc | التابع to_proc]]=== | ||
يعيد الكائنً من النوع <code>Proc</code> المقابل لهذا التابع. | يعيد الكائنً من النوع <code>Proc</code> المقابل لهذا التابع. | ||
سطر 52: | سطر 52: | ||
يعيد اسم التابع الأصلي (underlying method). | يعيد اسم التابع الأصلي (underlying method). | ||
===[[Ruby/Method/unbind | التابع unbind]]=== | ===[[Ruby/Method/unbind | التابع unbind]]=== | ||
يفك ارتباط | يفك ارتباط الكائن الذي استُدعي معه من مُستقبِله (receiver) الحالي. | ||
==مصادر<span> </span>== | ==مصادر<span> </span>== | ||
*[http://ruby-doc.org/core-2.5.1/ | *[http://ruby-doc.org/core-2.5.1/Method.html قسم الصنف Method في توثيق روبي الرسمي.] | ||
<noinclude>{{DISPLAYTITLE: صفحة الصنف <code>Method</code> في روبي}}</noinclude> | <noinclude>{{DISPLAYTITLE: صفحة الصنف <code>Method</code> في روبي}}</noinclude> | ||
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
[[تصنيف: Method]] | [[تصنيف: Method]] |
مراجعة 21:30، 25 أكتوبر 2018
يتم إنشاء كائنات الصنف Method
بواسطة التابع Object#method
، وترتبط بكائن معين (وليس بالصنف وحسب). ويمكن استخدامها لاستدعاء التابع داخل الكائن، أو ككتلة (block) مرتبطة بمكرر (iterator). كما يمكن فك ارتباطها (unbound) من كائن محدد (سيؤدي ذلك إلى إنشاء كائن UnboundMethod
)، ثم ربطها بآخر.
class Thing
def square(n)
n*n
end
end
thing = Thing.new
meth = thing.method(:square)
meth.call(9) #=> 81
[ 1, 2, 3 ].collect(&meth) #=> [1, 4, 9]
توابع الكائن العامة (Public Instance Methods)
التابع ==
يكاون كائنان من النوع Method
متساويين إن كانا مرتبطين بنفس الكائن، وكانا يشيران إلى نفس تعريف التابع، وكان لهما نفس الصنف أو الوحدة (module) المالكة.
التابع ===
يستدعي كتلة التابع مع تمرير المعامل obj
كوسيط لـ proc
.
التابع []
يستدعي الكتلة البرمجية للتابع، ويضبط قيم وسائط الكتلة عند القيم المعطاة.
التابع arity
يعيد مؤشرا لعدد الوسائط المقبولة من قبل التابع.
التابع call
يستدعي كتلة التابع، ويضبط وسائط الكتلة عند القيم المعطاة params باستخدام صياغة مشابهة لصياغة استدعاء التوابع.
التابع clone
يعيد نسخة من هذا التابع.
التابع curry
يعيد كتلة proc مُجزّءة (curried proc) انطلاقا من التابع الذي استُدعيت معه.
التابع eql?
يكون كائنان من النوع Method
متساويتين إذا كانا مرتبطين بنفس الكائن، ويرجعان إلى نفس التعريف، وكانا مملوكين من قبل نفس الصنف أو الوحدة.
التابع hash
يعيد رمز التكويد (hash) المقابل لكائن Method
الذي استُدعي معه.
التابع inspect
يعيد اسم التابع الأصلي (underlying method).
التابع name
يعيد اسم التابع.
التابع original_name
يعيد الاسم الأصلي للتابع الذي استُدعي معه.
التابع owner
يعيد الصنف أو الوحدة (module) التي تعرف التابع.
التابع parameters
يعيد معلومات عن وسائط التابع .
التابع receiver
يعيد المستقبل المتلقي (bound receiver) لكائن Method
.
التابع source_location
يعيد اسم الملف المصدر لروبي ورقم السطر الذي يحتوي هذا التابع، أو يعيد nil
إن لم يُعرّف هذا التابع في روبي (أي أصلي).
التابع super_method
يعيد كائنا من النوع Method
للصنف الأب (superclass)،
التابع to_proc
يعيد الكائنً من النوع Proc
المقابل لهذا التابع.
التابع to_s
يعيد اسم التابع الأصلي (underlying method).
التابع unbind
يفك ارتباط الكائن الذي استُدعي معه من مُستقبِله (receiver) الحالي.