التابع Module.instance_methods
الخاص بالصنف Module
في روبي
يعيد التابع instance_methods
مصفوفةً تحتوي على أسماء توابع النسخ (instance methods) العامة والمحمية (protected) في المستقبِل. بالنسبة للوحدات، ستكون التوابع هي العامة والمحمية. أما بالنسبة للأصناف، فستكون تلك التوابع هي توابع النسخ (وليس التوابع المفردة [singleton methods]). إذا كان أعطي المعامل الاختيار وكانت قيمته false
، فلن يتم تضمين توابع الأسلاف (ancestors).
البنية العامة
instance_methods(include_super=true)→ array
المعاملات
include_super
قيمة منطقية إن أعطيت وكانت false
، فلن يتم تضمين توابع الأسلاف (ancestors).
القيمة المعادة
تعاد مصفوفة تحتوي على أسماء توابع النسخ العامة والمحمية (protected) في المستقبِل.
أمثلة
مثال على استخدام التابع 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).