التابع ?Object.instance_variable_defined في روبي

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

يتحقَّق التابع ?instance_variable_defined إذا كان متغيِّر النسخة (instance variable) المُمرَّر إليه مُعرَّفًا في الكائن المعطى. تُحوَّل الوسائط النصية التي من النوع String إلى رموزٍ (symbols).

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

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

المعاملات

symbol

الرمز المراد التحقُّق من تعريفه في الكائن.

string

سلسلةٌ نصيةٌ من النوع String تُحوَّل إلى رمزٍ ثم يُتحقق من تعريفها في الكائن.

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

تُعاد القيمة true إذا كان متغيِّر النسخة symbol أو string مُعرَّفًا في الكائن المعطى؛ خلاف ذلك، تُعاد القيمة false.

أمثلة

مثالٌ عن استخدام التابع ?instance_variable_defined:

class Fred
  def initialize(p1, p2)
    @a, @b = p1, p2
  end
end
fred = Fred.new('cat', 99)
fred.instance_variable_defined?(:@a)    #=> true
fred.instance_variable_defined?("@b")   #=> true
fred.instance_variable_defined?("@c")   #=> false

انظر أيضًا

  • التابع ?eql: يتحقَّق من استخدام كلا الكائنين نفس مفتاح التجزئة.
  • التابع ?nil: يتحقَّق فيما إذا كان الكائن المعطى هو nil أم لا.
  • التابع ?instance_of: يتحقَّق إذا كان الكائن الذي استدعي معه نسخةً من الصِّنف المُمرَّر إليه.
  • التابع ?is_a: يتحقَّق إن كان الصنف المُمرَّر إليه هو نفسه صنف الكائن الذي استدعي معه، أو إن كان هذا الصنف أحد الأصناف العليا للكائن المعطى أو الوحدات المُضمَّنة في هذا الكائن.
  • التابع ?kind_of: يتحقَّق إن كان الصنف المُمرَّر إليه هو نفسه صنف الكائن المعطى، أو أنه واحدٌ من الأصناف العليا لذلك الكائن أو الوحدات المُضمَّنة فيه.
  • التابع ?respond_to: يتحقَّق من استجابة الكائن الذي استدعي معه للتابع المُمرَّر إليه.
  • التابع ?respond_to_missing: يتحقَّق فيما إذا كان الكائن المعطى يستجيب إلى تابعٍ محدِّدٍ أم لا.

مصادر