الفرق بين المراجعتين ل"Ruby/InstructionSequence/to a"
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>to_a</code> الخاص بالصنف <code>InstructionSequence</code> في روبي}}</noinclude> تصنيف: Ruby...') |
(لا فرق)
|
مراجعة 23:26، 1 نوفمبر 2018
يُعيد التابع to_a
مصفوفة (Array
) تتألف من 14 عنصرًا يمثلون سلسلة التعليمات بالبيانات التالية:
magic سلسلة نصية تحدد تشكيل (format) البيانات. دائما YARVInstructionSequence/SimpleDataFormat
. major_version الإصدار الرئيسي لسلسلة التعليمات. minor_version الإصدار الثانوي لسلسلة التعليمات. format_type عدد يمثل تشكيل البيانات. misc قاموس يحتوي ::arg_size
العدد الإجمالي للوسائط التي يأخذها التابع أو الكتلة (تساوي 0 إن لم تكن سلسلة التعليمات سلسلة التعليمات تمثل تابعًا أو كتلة) :local_size
عدد المتغيرات المحلية + 1 :stack_max
يُستخدم لحساب عمق المكدس (stack) حيث أُطلِق الاستثناء SystemStackError
. label
اسم السياق (block ، method ، class ، module إلخ) الذي تنتمي إليه سلسلة التعليمات. يساوي <main>
إن كانت سلسلة التعليمات في المستوى الأعلى، أو <compiled>
إذا تم تقييمها انطلاقًا من سلسلة نصية. path
المسار النسبي لملف روبي حيث تم تحميل سلسلة التعليمات. تساوي <compiled>
إذا تم تقييم سلسلة التعليمات من سلسلة نصية. absolute_path
المسار المطلق لملف روبي حيث تم تحميل سلسلة التعليمات. nil
إذا تم تقييم سلسلة التعليمات من سلسلة نصية. first_lineno
رقم أول سطر في المصدر حيث تم تحميل سلسلة التعليمات. type نوع سلسلة التعليمات. القيم الصالحة هي :top
و :method
و :block
و :class
و :rescue
و :ensure
و :eval
و :main
و :defined_guard
. locals مصفوفة تحتوي أسماء جميع الوسائط والمتغيرات المحلية على هيئة رموز. params قاموس Hash
يحتوي على معلومات عن الوسائط . يمكن العثور على مزيد من المعلومات حول هذه القيم في vm_core.h
. catch_table قائمة بالاستثناءات ومعاملات التحكم (rescue و next و redo و break، إلخ). bytecode مصفوفة مكونة من مصفوفات تحتوي على أسماء التعليمات والعوامل (operands) التي تشكل نص السلسلة التعليمات.
لاحظ أن هذا التشكيل هو خاص بالتحكم بالرنين المغناطيسي والإصدار المعتمد.
البنية العامة
to_a → ary
القيمة المُعادة
انظر أيضا
- التابع
path
: يُعيد مسار سلسلة التعليمات . - التابع
to_binary
: يُسلسل (serialize) سلسلة التعليمات تنسيق على هيئة سلسلة نصية ثنائيةString
. يتم إنشاء سلسلة التعليمات مقابلة بواسطة التابع::load_from_binary
.