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

من موسوعة حسوب
< Ruby‏ | Module
مراجعة 17:19، 19 نوفمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (مراجعة وتدقيق.)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يتحقق التابع public_method_defined?‎ إن كان التابع العام (public method) المعطى معرفًا في الوحدة/الصنف (أو الوحدات المتضمنة فيه، أو أسلافه إن كان صنفا).

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

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

المعاملات

symbol‎

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

string‎

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

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

يعيد التابع public_method_defined?‎ القيمة true إن كان التابع العام المعطى معرفًا بواسطة في الوحدة/الصنف (أو الوحدات المتضمنة فيه، أو أسلافه إن كان صنفا)، وإلا فسيعيد false.

أمثلة

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

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

انظر أيضا

  • التابع public: يعين المرئية (visibility) الافتراضية للتوابع المعرفة لاحقًا إلى public العامة.
  • التابع public_class_method: يصنع قائمة بتوابع الصنف العامة (public) الحالية.
  • التابع public_instance_methods: يعيد قائمة بتوابع النسخة العامة (public instance methods) المعرفة في الوحدة. 
  • التابع public_constant: يصنع قائمة بالثوابت العامة (public) الموجودة

مصادر