الفرق بين المراجعتين لصفحة: «Ruby/Module/instance methods»

من موسوعة حسوب
< Ruby‏ | Module
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>instance_methods‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude> تصنيف: Ruby...'
 
لا ملخص تعديل
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Module]]
[[تصنيف: Ruby Module]]
يعيد التابع <code>instance_methods</code> مصفوفة تحتوي على أسماء توابع النسخ (instance methods) العامة والمحمية (protected) في المستقبِل (receiver). بالنسبة للوحدات، فهي التوابع العامة والمحمية. أما بالنسبة للأصناف، فهي توابع النسخ (وليس التوابع المفردة [singleton methods]). إذا كان الوسيط الاختياري المعطى يساوي <code>false</code>، فلن يتم تضمين توابع الأسلاف (ancestors).
يعيد التابع <code>instance_methods</code> مصفوفة تحتوي على أسماء توابع النسخ (instance methods) العامة والمحمية (protected) في المستقبِل (receiver). بالنسبة للوحدات، ستكون التوابع العامة والمحمية. أما بالنسبة للأصناف، فستكون توابع النسخ (وليس التوابع المفردة [singleton methods]). إذا كان الوسيط الاختياري المعطى يساوي <code>false</code>، فلن يتم تضمين توابع الأسلاف (ancestors).
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">instance_methods(include_super=true)→ array‎</syntaxhighlight>
<syntaxhighlight lang="ruby">instance_methods(include_super=true)→ array‎</syntaxhighlight>
سطر 9: سطر 9:
===<code>include_super‎</code>===
===<code>include_super‎</code>===


 
في حال  إعطائه القيمة<code>false</code>، فلن يتم تضمين توابع الأسلاف (ancestors).
==القيمة المُعادة==
==القيمة المُعادة==
عيد التابع <code>instance_methods</code> مصفوفة تحتوي على أسماء توابع النسخ العامة والمحمية (protected) في المستقبِل (receiver).


==أمثلة==
==أمثلة==
سطر 30: سطر 31:
C.instance_methods.include?(:method2)      #=> true‎</syntaxhighlight>
C.instance_methods.include?(:method2)      #=> true‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضا==
* التابع <code>[[Ruby/Module/instance_method|instance_method]]</code>: يعيد  كائن <code>UnboundMethod</code> يمثل تابع النسخة (instance method) المعطى في الوحدة .
* التابع <code>[[Ruby/Module/instance_method|instance_method]]</code>: يعيد  كائن <code>UnboundMethod</code> يمثل تابع النسخة (instance method) المعطى في الوحدة.
* التابع <code>[[Ruby/Module/method_added|method_added]]</code>: يُستدعى  في كل مرة يُضاف تابع نسخة (instance method) إلى المُستقبِل (receiver).
* التابع <code>[[Ruby/Module/method_added|method_added]]</code>: يُستدعى  في كل مرة يُضاف تابع نسخة (instance method) إلى المُستقبِل (receiver).


==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Module.html#method-i-instance_methods قسم  التابع instance_methods‎ في الصنف Module‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/Module.html#method-i-instance_methods قسم  التابع instance_methods‎ في الصنف Module‎ في توثيق روبي الرسمي.]

مراجعة 01:33، 27 أكتوبر 2018

يعيد التابع instance_methods مصفوفة تحتوي على أسماء توابع النسخ (instance methods) العامة والمحمية (protected) في المستقبِل (receiver). بالنسبة للوحدات، ستكون التوابع العامة والمحمية. أما بالنسبة للأصناف، فستكون توابع النسخ (وليس التوابع المفردة [singleton methods]). إذا كان الوسيط الاختياري المعطى يساوي false، فلن يتم تضمين توابع الأسلاف (ancestors).

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

instance_methods(include_super=true) array

المعاملات

include_super‎

في حال إعطائه القيمةfalse، فلن يتم تضمين توابع الأسلاف (ancestors).

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

عيد التابع instance_methods مصفوفة تحتوي على أسماء توابع النسخ العامة والمحمية (protected) في المستقبِل (receiver).

أمثلة

مثال على استخدام التابع instance_methods‎:

module A
  def method1()  end
end
class B
  include A
  def method2()  end
end
class C < B
  def method3()  end
end
A.instance_methods(false)                   #=> [:method1]
B.instance_methods(false)                   #=> [:method2]
B.instance_methods(true).include?(:method1) #=> true
C.instance_methods(false)                   #=> [:method3]
C.instance_methods.include?(:method2)       #=> true‎

انظر أيضا

  • التابع instance_method: يعيد كائن UnboundMethod يمثل تابع النسخة (instance method) المعطى في الوحدة.
  • التابع method_added: يُستدعى في كل مرة يُضاف تابع نسخة (instance method) إلى المُستقبِل (receiver).

مصادر