التابع Object.instance_variable_get في روبي

من موسوعة حسوب
< Ruby‏ | Object
مراجعة 09:06، 25 نوفمبر 2018 بواسطة محمد-خطيب (نقاش | مساهمات) (أنشأ الصفحة ب'{{DISPLAYTITLE:التابع <code>Object.instance_variable_get</code> في روبي}} يجلب التابع <code>instance_variable_get</code> قيمة مُتغيِّر...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يجلب التابع instance_variable_get قيمة مُتغيِّر النسخة (instance variable) المُمرَّر إليه من الكائن المعطى، أو يُعيد قيمةً عدميّةً nil إذا كان المتغيِّر غير معيَّن في ذلك الكائن. يجب أن يحتوي اسم المُتغيِّر على الرمز @ في حال كان من متغيرات النسخة النظامية (regular instance variables). يُرمى الاستثناء NameError إذا كان الرَّمز المُعطى غير معرَّفٍ على أنَّه اسمٌ لمتغيِّر نسخة. تُحوَّل الوسائط النّصية المُمرَّرة إلى التابع إلى رموز.

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

instance_variable_get(symbol)  obj
instance_variable_get(string)  obj

المعاملات

symbol

الرمزُ المراد جلب قيمته في حال كان معرَّفًا كمُتغيِّرٍ للنسخة في الكائن المعطى.

string

سلسلةٌ نصيةٌ تُحوَّل إلى رمزٍ ثمَّ تُجلَب قيمته في حال كان معرَّفًا كمُتغيِّرٍ للنسخة في الكائن المعطى.

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

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

أمثلة

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

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

انظر أيضًا

  • التابع instance_variable_set: يُعيِّن قيمة متغيِّر نسخةٍ محدِّدٍ إلى قيمة معيَّنة في الكائن المُعطى.
  • التابع instance_variables: يجلب جميع أسماء متغيرات النسخة للمستقبل المعطى.

مصادر