التابع Module.‎‎private_method_defined?‎‎‎ في روبي

من موسوعة حسوب
< Ruby‏ | Module

يتحقق التابع private_method_defined?‎ إن كان التابع الخاص (private) المعطى معرَّفًا من قِبَل _ mod_ (أو الوحدات المتضمنة فيه، وأسلافه [ancestors] إن كان صنفًا).

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

private_method_defined?(symbol)  true or false
private_method_defined?(string)  true or false

المعاملات

symbol‎

رمز يمثل التابع الخاص.

string‎

سلسلة نصية تمثل التابع الخاص. يحول هذا المعامل - إن أعطي - إلى رمز.

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

تعاد القيمة true إن كان التابع الخاص (private) المعطى معرفًا من طرف _ mod_ (أو الوحدات المتضمنة فيه، وأسلافه [ancestors] إن كان صنفًا). خلا ذلك، تعاد القيمة false.

أمثلة

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

module A
  def method1()  end
end
class B
  private
  def method2()  end
end
class C < B
  include A
  def method3()  end
end
A.method_defined? :method1            #=> true
C.private_method_defined? "method1"   #=> false
C.private_method_defined? "method2"   #=> true
C.method_defined? "method2"           #=> false‎

انظر أيضا

  • التابع private_instance_methods: يعيد قائمة بتوابع النسخة الخاصة (private instance methods) المعرفة في الوحدة.
  • التابع protected_instance_methods: يعيد قائمة بتوابع النسخة (instance methods) المحمية المعرفة في الوحدة. 
  • التابع protected_method_defined?‎: يتحقق إن كان التابع المحمي (protected) المعطى معرفًا في الوحدة (أو الوحدات المُتضمنة فيه، أو أسلافه إن كان صنفًا).

مصادر