الفرق بين المراجعتين ل"Ruby/Object/inspect"

من موسوعة حسوب
< Ruby‏ | Object
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'{{DISPLAYTITLE:التابع Object.inspect في روبي}} يُعيد التابع <code>inspect</code> سلسلةً نصيةً تحتوي تمثيلًا  يفهمه...')
(لا فرق)

مراجعة 17:12، 22 نوفمبر 2018


يُعيد التابع inspect سلسلةً نصيةً تحتوي تمثيلًا  يفهمه البشر للكائن الذي استدعي معه. يُظهر التابع افتراضيًا اسم الصنف، وترميزًا معبِّرًا عن رقم تعريف الكائن، وقائمةً من متغيرات النسخة وقيمها (عبر استدعاء التابع inspect على كلِّ واحدةٍ منها). يجب على الأصناف المعرَّفة من قبل المستخدم أن تُهمِل هذا التابع لتوفر تمثيلًا أفضل للكائن. عند تجاوز هذا التابع، يجب أن تُعاد سلسلةٌ نصيةٌ مرمزةٌ وفقًا للترميز الخارجي الافتراضي.

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

inspect → string

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

تُعاد سلسلةً نصيةً تمثِّل الكائن المعطى بصيغة يفهما البشر وتحوي اسم الصنف، وترميزًا معبِّرًا عن رقم تعريف الكائن، وقائمةً من متغيرات النسخة وقيمها.

أمثلة

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

[ 1, 2, 3..4, 'five' ].inspect   #=> "[1, 2, 3..4, \"five\"]"

Time.new.inspect                 #=> "2008-03-08 19:43:39 +0900"

class Foo

end

Foo.new.inspect                  #=> "#<Foo:0x0300c868>"

class Bar

 def initialize

   @bar = 1

 end

end

Bar.new.inspect                  #=> "#<Bar:0x0300c868 @bar=1>"

انظر أيضًا

  • التابع itself: يُعيد الكائن المستقبل.
  • التابع to_s: يُعيد سلسلةً نصيةً تُمثِّل الكائن الذي استدعي معه.
  • التابع object_id: يعيد مُعرِّفا عدديًا للكائن الذي استُدعي معه.
  • التابع extend: يُضيف توابع النسخة من كُلِّ وحدةٍ مُرِّرت إليه إلى الكائن الذي استدعي معه.
  • التابع display: يَطبع الكائن الذي استدعي معه على المنفذ المعطى.

مصادر