الفرق بين المراجعتين لصفحة: «Ruby/Object/inspect»
أنشأ الصفحة ب'{{DISPLAYTITLE:التابع Object.inspect في روبي}} يُعيد التابع <code>inspect</code> سلسلةً نصيةً تحتوي تمثيلًا يفهمه...' |
طلا ملخص تعديل |
||
سطر 1: | سطر 1: | ||
{{DISPLAYTITLE:التابع Object.inspect في روبي}} | {{DISPLAYTITLE:التابع <code>Object.inspect</code> في روبي}} | ||
يُعيد التابع <code>inspect</code> سلسلةً نصيةً تحتوي تمثيلًا يفهمه البشر للكائن الذي استدعي معه. يُظهر التابع افتراضيًا اسم الصنف، وترميزًا معبِّرًا عن رقم تعريف الكائن، وقائمةً من متغيرات النسخة وقيمها (عبر استدعاء التابع <code>inspect</code> على كلِّ واحدةٍ منها). يجب على الأصناف المعرَّفة من قبل المستخدم أن تُهمِل هذا التابع لتوفر تمثيلًا أفضل للكائن. عند تجاوز هذا التابع، يجب أن تُعاد سلسلةٌ نصيةٌ مرمزةٌ وفقًا للترميز الخارجي الافتراضي. | يُعيد التابع <code>inspect</code> سلسلةً نصيةً تحتوي تمثيلًا يفهمه البشر للكائن الذي استدعي معه. يُظهر التابع افتراضيًا اسم الصنف، وترميزًا معبِّرًا عن رقم تعريف الكائن، وقائمةً من متغيرات النسخة وقيمها (عبر استدعاء التابع <code>inspect</code> على كلِّ واحدةٍ منها). يجب على الأصناف المعرَّفة من قبل المستخدم أن تُهمِل هذا التابع لتوفر تمثيلًا أفضل للكائن. عند تجاوز هذا التابع، يجب أن تُعاد سلسلةٌ نصيةٌ مرمزةٌ وفقًا للترميز الخارجي الافتراضي. | ||
== البنية العامة == | == البنية العامة == | ||
<syntaxhighlight lang="ruby"> | |||
inspect → string | inspect → string | ||
</syntaxhighlight> | |||
== القيم المعادة == | == القيم المعادة == | ||
سطر 10: | سطر 11: | ||
== أمثلة == | == أمثلة == | ||
مثالٌ عن استخدام التابع inspect: | مثالٌ عن استخدام التابع <code>inspect</code>:<syntaxhighlight lang="ruby"> | ||
[ 1, 2, 3..4, 'five' ].inspect #=> "[1, 2, 3..4, \"five\"]" | |||
[ 1, 2, 3..4, 'five' ].inspect | Time.new.inspect #=> "2008-03-08 19:43:39 +0900" | ||
Time.new.inspect | |||
class Foo | class Foo | ||
end | end | ||
Foo.new.inspect #=> "#<Foo:0x0300c868>" | |||
Foo.new.inspect | |||
class Bar | class Bar | ||
def initialize | |||
@bar = 1 | |||
end | |||
end | end | ||
Bar.new.inspect #=> "#<Bar:0x0300c868 @bar=1>" | |||
</syntaxhighlight> | |||
== انظر أيضًا == | == انظر أيضًا == | ||
* التابع itself: يُعيد الكائن المستقبل | * التابع <code>[[Ruby/Object/itself|itself]]</code>: يُعيد الكائن المستقبل. | ||
*التابع <code>[[Ruby/Object/to s|to_s]]</code>: يُعيد سلسلةً نصيةً تُمثِّل الكائن الذي استدعي معه. | |||
*التابع <code>[[Ruby/Object/object id|object_id]]</code>: يعيد مُعرِّفا عدديًا للكائن الذي استُدعي معه. | |||
*التابع <code>[[Ruby/Object/extend|extend]]</code>: يُضيف توابع النسخة من كُلِّ وحدةٍ مُرِّرت إليه إلى الكائن الذي استدعي معه. | |||
*التابع <code>[[Ruby/Object/display|display]]</code>: يَطبع الكائن الذي استدعي معه على المنفذ المعطى. | |||
== مصادر == | == مصادر == | ||
* [http://ruby-doc.org/core-2.5.1/Object.html#method-i-inspect صفحة التابع inspect في الصنف Object في توثيق روبي الرسمي.] | * [http://ruby-doc.org/core-2.5.1/Object.html#method-i-inspect صفحة التابع inspect في الصنف Object في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 17:14، 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
: يَطبع الكائن الذي استدعي معه على المنفذ المعطى.