الفرق بين المراجعتين لصفحة: «Ruby/InstructionSequence/to a»

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


==انظر أيضا==
==انظر أيضا==
* التابع <code>[[Ruby/InstructionSequence/path|path]]</code>: يُعيد مسار [[Ruby/InstructionSequence|سلسلة التعليمات]] .
* التابع <code>[[Ruby/InstructionSequence/path|path]]</code>: يُعيد مسار [[Ruby/InstructionSequence|سلسلة التعليمات]] .
* التابع <code>[[Ruby/InstructionSequence/to_binary|to_binary]]</code>: يُسلسل (serialize)  [[Ruby/InstructionSequence|سلسلة التعليمات]]  تنسيق على هيئة [[Ruby/String|سلسلة نصية]] ثنائية <code>[[Ruby/String|String]]</code>. يتم إنشاء [[Ruby/InstructionSequence|سلسلة التعليمات]] مقابلة بواسطة التابع <code>[[Ruby/InstructionSequence/load_from_binary|::load_from_binary]]</code>.


==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/RubyVM/InstructionSequence.html#method-i-to_a قسم  التابع to_a‎ في الصنف InstructionSequence‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/RubyVM/InstructionSequence.html#method-i-to_a قسم  التابع to_a‎ في الصنف InstructionSequence‎ في توثيق روبي الرسمي.]

مراجعة 23:43، 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 قاموس يحتوي على معلومات عن الوسائط. يمكن العثور على مزيد من المعلومات حول هذه القيم في vm_core.h
catch_table قائمة بالاستثناءات ومعاملات التحكم (rescue و next و redo و break، إلخ).
bytecode مصفوفة مكونة من مصفوفات تحتوي على أسماء التعليمات والعوامل (operands) التي تشكل نص سلسلة التعليمات.

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

to_a  ary

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

يُعيد التابع to_a مصفوفة (Array) تتألف من 14 عنصرًا يمثلون سلسلة التعليمات بالبيانات التالية:

انظر أيضا

مصادر