الفرق بين المراجعتين ل"Ruby/Module/method defined-3F"

من موسوعة حسوب
< Ruby‏ | Module
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>‎method_defined?‎‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude> تصنيف: Ru...')
 
ط (مراجعة وتدقيق.)
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>‎method_defined?‎‎</code> الخاص بالصنف <code>Module</code> في روبي}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: التابع <code>Module.‎method_defined?‎‎</code> في روبي}}</noinclude>
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Module]]
+
[[تصنيف: Ruby Module Class]]
يعيد التابع <code>method_defined?</code> القيمة <code>true</code> إن كان التابع المعطى مُعرّفا في الوحدة أو الصنف (أو الوحدات المُتضمنة فيه، وإن كان صنفًا فأسلافه). تتم مطابقة التوابع العامة والمحمية. تٌحوّل الوسائط النصية إلى رموز.
+
يتحقق التابع <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
سطر 9: سطر 11:
 
==المعاملات==
 
==المعاملات==
 
===<code>symbol‎</code>===
 
===<code>symbol‎</code>===
 +
[[Ruby/Symbol|رمز]] يمثل التابع.
  
 
===<code>string‎</code>===
 
===<code>string‎</code>===
  
 
+
[[Ruby/String|سلسلة نصية]] تمثل التابع.
==القيمة المُعادة==
+
==القيمة المعادة==
 +
تعاد القيمة <code>true</code> إن كان التابع المعطى مُعرّفًا في الوحدة أو الصنف.
  
 
==أمثلة==
 
==أمثلة==
سطر 39: سطر 43:
 
C.method_defined? "private_method2"    #=> false‎</syntaxhighlight>
 
C.method_defined? "private_method2"    #=> false‎</syntaxhighlight>
 
==انظر أيضا==
 
==انظر أيضا==
* التابع <code>[[Ruby/Module/method_added|method_added]]</code>: يُستدعى في كل مرة يُضاف تابع نسخة (instance method) إلى المُستقبِل (receiver).
+
* التابع <code>[[Ruby/Module/method_added|method_added]]</code>: يُستدعى في كل مرة يُضاف تابع نسخة (instance method) إلى المُستقبِل (receiver).
* التابع <code>[[Ruby/Module/method_removed|method_removed]]</code>: يستدعى كمكالمة في كل مرة يُزال تابع نسخة (instance method) من المُستقبِل (receiver).
+
* التابع <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 قسم التابع method_defined?‎ في الصنف Module‎ في توثيق روبي الرسمي.]
+
*[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).

مصادر