نتائج البحث
اذهب إلى التنقل
اذهب إلى البحث
الصنف RubyVM في روبي
يمثل الصنف RubyVM الآلة الافتراضية (VM، اختصار إلى virtual machine). الثوابت DEFAULT_PARAMS يعرض هذا الثابت معاملات الآلة الافتراضية (VM) الأولية (default). لاحظ أنّ تغيير تلك القيم لا يؤثر على طريقة تشغيل الآلة الافتراضية. المواصفات ليست مستقرة، ويجب أن لا تعتمد على هذه القيمة. INSTRUCTION_NAMES يمثِّل هذا الثابت أسماء التعليمات. OPTS يحتوي هذا الثابت على خيارات الآلة الافتراضية (vm). توابع الصنف العامة stat يعيد كائنًا من النوع Hash يحوي عدادات مُخصصة (implementation-dependent counters) داخل الآلة الافتراضية (VM). مصادر صفحة الصنف RubyVM في توثيق روبي الرسمي. ...
التابع InstructionSequence.of في روبي
يُعيد التابع of سلسلة التعليمات التي تحوي الكائن Proc أو Method المعطى. البنية العامة of(p1)
أمثلة مثال على استعمال التابع of باستخدام irb: # a proc
> p = proc { num = 1 + 2 }
> RubyVM::InstructionSequence.of(p)
> #=> <RubyVM::InstructionSequence:block in irb_binding@(irb)>
# for a method
> def foo(bar); puts bar; end
> RubyVM::InstructionSequence.of(method(:foo))
> #=> <RubyVM::InstructionSequence:foo@(irb)>
أو باستخدام compile_file: # /tmp/iseq_of.rb
def hello
puts "hello, world"
end
$a_global_proc = proc { str = 'a' + 'b' }
# in irb
> require '/tmp/iseq_of.rb'
# first the method hello
> RubyVM::InstructionSequence.of(method(:hello))
> #=> ...
التابع InstructionSequence.base_label في روبي
يُعيد التابع base_label التسمية الأساسية (base label) لسلسلة التعليمات التي استُدعي معها. البنية العامة base_label()
القيمة المعادة تعاد التسمية الأساسية (base label) لسلسلة التعليمات التي استُدعي معها. أمثلة مثال على استخدام التابع base_label: iseq = RubyVM::InstructionSequence.compile('num = 1 + 2')
#=> <RubyVM::InstructionSequence:<compiled>@<compiled>>
iseq.base_label
#=> "<compiled>"
مثال آخر على استعمال التابع base_label مع استخدام التابع compile_file: # /tmp/method.rb
def hello
puts "hello, world"
end
# in irb
> iseq = RubyVM::InstructionSequence.compile_file('/tmp/method.rb')
> iseq.base_label #=> <main>
انظر أيضًا التابع absolute_path: يُعيد المسار المطلق لسلسلة التعليمات المعطاة. مصادر قسم التابع base_label في الصنف ...
التابع InstructionSequence.path في روبي
يُعيد التابع path مسار سلسلة التعليمات التي استُدعي معها، أو يعيد <compiled> إذا تم تقييم سلسلة التعليمات انطلاقًا من سلسلة نصية. البنية العامة path()
القيمة المعادة يعاد مسار سلسلة التعليمات المعطاة، أو يعاد <compiled> إذا تم تقييم سلسلة التعليمات انطلاقًا من سلسلة نصية. أمثلة مثال على استخدام التابع path مع irb: iseq = RubyVM::InstructionSequence.compile('num = 1 + 2')
#=> <RubyVM::InstructionSequence:<compiled>@<compiled>>
iseq.path
#=> "<compiled>"
مثال آخر على استخدام التابع path مع compile_file: # /tmp/method.rb
def hello
puts "hello, world"
end
# in irb
> iseq = RubyVM::InstructionSequence.compile_file('/tmp/method.rb')
> iseq.path ...
التابع InstructionSequence.label في روبي
يُعيد التابع label تسمية (label) سلسلة التعليمات التي استُدعي معها، أو يعيد <main> إن كان التسلسل في المستوى الأعلى (top level)، أو يعيد <compiled> إذا تم تقييمها من سلسلة نصية. البنية العامة label()
القيمة المعادة تعاد تسمية (label) سلسلة التعليمات المعطاة، أو يعاد <main> إن كان التسلسل في المستوى الأعلى (at the top level)، أو يعاد <compiled> إذا تم تقييمها من سلسلة نصية. أمثلة مثال على استخدام التابع label مع irb: iseq = RubyVM::InstructionSequence.compile('num = 1 + 2')
#=> <RubyVM::InstructionSequence:<compiled>@<compiled>>
iseq.label
#=> "<compiled>"
مثال آخر ...
التابع InstructionSequence.disasm في روبي
يأخذ التابع disasm كائنًا يمكن أن يكون من النوع Method أو من النوع Proc ويعيد سلسلة نصية تعليمات قابلة للقراءة لهذا المعامل المعطى. البنية العامة disasm(body) → str
disassemble(body) → str
المعاملات body كائن من النوع Method أو من النوع Proc. القيمة المعادة تعاد سلسلة نصية تحوي المعامل body على هيئة تعليمات قابلة للقراءة. أمثلة مثال على استخدام التابع disasm مع تمرير الكائن Method إليه: # /tmp/method.rb
def hello
puts "hello, world"
end
puts RubyVM::InstructionSequence.disasm(method(:hello))
الناتج سيكون: == disasm: <RubyVM::InstructionSequence:hello@/tmp/method.rb>============
0000 trace ...
التابع InstructionSequence.disassemble في روبي
يأخذ التابع disassemble المعامل body، والذي سيكون إما كائنًا من النوع Method، أو من النوع Proc، ثم يُعيد سلسلة نصية تحوي هذا المعامل على هيئة تعليمات قابلة للقراءة. البنية العامة disasm(body) → str
disassemble(body) → str
المعاملات body كائن من النوع Method أو من النوع Proc. القيمة المعادة تعاد سلسلة نصية تحوي محتوى المعامل body على هيئة تعليمات قابلة للقراءة. أمثلة مثال على استخدام التابع disassemble مع كائن من النوع Method: # /tmp/method.rb
def hello
puts "hello, world"
end
puts RubyVM::InstructionSequence.disasm(method(:hello))
الناتج سيكون: == disasm: ...
التابع InstructionSequence.first_lineno في روبي
يعيد التابع first_lineno رقم أول سطر في المصدر حيث تم تحميل سلسلة التعليمات الحالية. البنية العامة first_lineno()
القيمة المعادة يعاد رقم أول سطر في المصدر حيث تم تحميل سلسلة التعليمات الحالية. أمثلة مثال على استخدام التابع first_lineno: iseq = RubyVM::InstructionSequence.compile('num = 1 + 2')
#=> <RubyVM::InstructionSequence:<compiled>@<compiled>>
iseq.first_lineno
#=> 1
انظر أيضًا التابع inspect: يحول سلسلة التعليمات إلى سلسلة نصية قابلة للقراءة. مصادر قسم التابع first_lineno في الصنف InstructionSequence في توثيق روبي الرسمي.
الثابتة OPTS الخاص بالصنف RubyVM في روبي
تحتوي الثابتة OPTS على خيارات الآلة الافتراضية (vm). انظر أيضا صفحة الصنف RubyVM. صفحة الثابتة DEFAULT_PARAMS. مصادر قسم الثابتة stat في الصنف RubyVM في توثيق روبي الرسمي.
الثابتة DEFAULT_PARAMS الخاص بالصنف RubyVM في روبي
تعرض الثابتة DEFAULT_PARAMS وسائط الآلة الافتراضية (VM) الاولية (default ). لاحظ أنّ تغيير تلك القيم لا يؤثر على طريقة تشغيل الآلة الافتراضية. المواصفات ليست مستقرة، ويجب أن لا تعتمد على هذه القيمة. انظر أيضا صفحة الصنف RubyVM. صفحة الثابتة OPTS. مصادر قسم الثابتة DEFAULT_PARAMS في الصنف RubyVM في توثيق روبي الرسمي.