الفرق بين المراجعتين لصفحة: «Ruby/Module/method defined-3F»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط مراجعة وتدقيق. |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: التابع <code>method_defined? | <noinclude>{{DISPLAYTITLE: التابع <code>Module.method_defined?</code> في روبي}}</noinclude> | ||
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby Module]] | [[تصنيف: Ruby Module Class]] | ||
يتحقق التابع <code>method_defined?</code> إن كان التابع المعطى مُعرّفًا في الوحدة أو الصنف (أو في الوحدات المُتضمنة فيه، وإن كان صنفًا في أسلافه). تتم مطابقة التوابع العامة والمحمية. | |||
تٌحوّل الوسائط النصية إلى رموز. | تٌحوّل الوسائط [[Ruby/String|النصية]] إلى [[Ruby/Symbol|رموز]]. | ||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">method_defined?(symbol) → true or false | <syntaxhighlight lang="ruby">method_defined?(symbol) → true or false | ||
سطر 11: | سطر 11: | ||
==المعاملات== | ==المعاملات== | ||
===<code>symbol</code>=== | ===<code>symbol</code>=== | ||
رمز يمثل التابع. | [[Ruby/Symbol|رمز]] يمثل التابع. | ||
===<code>string</code>=== | ===<code>string</code>=== | ||
سلسلة نصية تمثل التابع. | [[Ruby/String|سلسلة نصية]] تمثل التابع. | ||
==القيمة | ==القيمة المعادة== | ||
تعاد القيمة <code>true</code> إن كان التابع المعطى مُعرّفًا في الوحدة أو الصنف. | |||
==أمثلة== | ==أمثلة== | ||
سطر 43: | سطر 43: | ||
C.method_defined? "private_method2" #=> false</syntaxhighlight> | C.method_defined? "private_method2" #=> false</syntaxhighlight> | ||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع <code>[[Ruby/Module/method_added|method_added]]</code>: يُستدعى | * التابع <code>[[Ruby/Module/method_added|method_added]]</code>: يُستدعى في كل مرة يُضاف تابع نسخة (instance method) إلى المُستقبِل (receiver). | ||
* التابع <code>[[Ruby/Module/method_removed|method_removed]]</code>: يستدعى | * التابع <code>[[Ruby/Module/method_removed|method_removed]]</code>: يستدعى في كل مرة يُزال تابع نسخة (instance method) من المُستقبِل (receiver). | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/Module.html#method-i-method_defined-3F قسم | *[http://ruby-doc.org/core-2.5.1/Module.html#method-i-method_defined-3F قسم التابع method_defined? في الصنف Module في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 12:23، 19 نوفمبر 2018
يتحقق التابع method_defined?
إن كان التابع المعطى مُعرّفًا في الوحدة أو الصنف (أو في الوحدات المُتضمنة فيه، وإن كان صنفًا في أسلافه). تتم مطابقة التوابع العامة والمحمية.
تٌحوّل الوسائط النصية إلى رموز.
البنية العامة
method_defined?(symbol) → true or false
method_defined?(string) → true or false
المعاملات
symbol
رمز يمثل التابع.
string
سلسلة نصية تمثل التابع.
القيمة المعادة
تعاد القيمة true
إن كان التابع المعطى مُعرّفًا في الوحدة أو الصنف.
أمثلة
مثال على استخدام التابع method_defined?
:
module A
def method1() end
def protected_method1() end
protected :protected_method1
end
class B
def method2() end
def private_method2() end
private :private_method2
end
class C < B
include A
def method3() end
end
A.method_defined? :method1 #=> true
C.method_defined? "method1" #=> true
C.method_defined? "method2" #=> true
C.method_defined? "method3" #=> true
C.method_defined? "protected_method1" #=> true
C.method_defined? "method4" #=> false
C.method_defined? "private_method2" #=> false
انظر أيضا
- التابع
method_added
: يُستدعى في كل مرة يُضاف تابع نسخة (instance method) إلى المُستقبِل (receiver). - التابع
method_removed
: يستدعى في كل مرة يُزال تابع نسخة (instance method) من المُستقبِل (receiver).