الفرق بين المراجعتين لصفحة: «Ruby/Kernel»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
سطر 2: | سطر 2: | ||
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
[[تصنيف: Ruby Kernel]] | [[تصنيف: Ruby Kernel]] | ||
الوحدة <code>Kernel</code> | تُضمَّن الوحدة <code>Kernel</code> من طرف الصنف <code>[[Ruby/Object|Object]]</code>، لذلك فتوابعها متاحة في كل كائنات روبي. | ||
توابع نسخ الصنف <code>Kernel</code> مُوثّقة في صفحة الصنف <code>[[Ruby/Object|Object]]</code>، أما توابع الوحدة <code>Kernel</code> فهي مُوثقة هنا. تستدعى هذه التوابع بدون مستقبل (receiver)، وبالتالي يمكن استدعاؤها وفق الشكل | توابع نسخ الصنف <code>Kernel</code> مُوثّقة في صفحة الصنف <code>[[Ruby/Object|Object]]</code>، أما توابع الوحدة <code>Kernel</code> فهي مُوثقة هنا. تستدعى هذه التوابع بدون مستقبل (receiver)، وبالتالي يمكن استدعاؤها وفق الشكل الدالي:<syntaxhighlight lang="ruby"> | ||
sprintf "%.1f", 1.234 #=> "1.2" | sprintf "%.1f", 1.234 #=> "1.2" | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==توابع الصنف العامة (Public Class Methods)== | ==توابع الصنف العامة (Public Class Methods)== | ||
===[[Ruby/Kernel/Array | | ===[[Ruby/Kernel/Array|Array]]=== | ||
يعيد الوسيط المعطى على شكل مصفوفة (<code>Array</code>). | يعيد الوسيط المعطى على شكل مصفوفة (<code>Array</code>). | ||
===[[Ruby/Kernel/Complex | | ===[[Ruby/Kernel/Complex|Complex]]=== | ||
يعيد | يعيد ناتج التعبير <code>x + i * y</code>؛ حيث <code>i</code> هو الوحدة التخيلية العقدية. | ||
===[[Ruby/Kernel/Hash | | ===[[Ruby/Kernel/Hash|Hash]]=== | ||
يحول الوسيط المعطى إلى قاموس <code>Hash</code> عبر استدعاء <code>arg.to_hash</code>. | يحول الوسيط المعطى إلى قاموس <code>Hash</code> عبر استدعاء <code>arg.to_hash</code>. | ||
===[[Ruby/Kernel/Integer | | ===[[Ruby/Kernel/Integer|Integer]]=== | ||
يحول الوسيط المعطى إلى عدد صحيح (<code>Integer</code>). | يحول الوسيط المعطى إلى عدد صحيح (<code>Integer</code>). | ||
يعيد ناتج العملية <code>x/y</code> أو الوسيط المعطى <code>arg</code> على شكل عدد جذري (<code>Rational</code>). | يعيد ناتج العملية <code>x/y</code> أو الوسيط المعطى <code>arg</code> على شكل عدد جذري (<code>Rational</code>). | ||
===[[Ruby/Kernel/String | | ===[[Ruby/Kernel/String|String]]=== | ||
يعيد الوسيط المعطى على شكل سلسلة نصية (<code>String</code>). | يعيد الوسيط المعطى على شكل سلسلة نصية (<code>String</code>). | ||
===[[Ruby/Kernel/ | ===[[Ruby/Kernel/ callee|__callee__]]=== | ||
يعيد اسم | يعيد اسم الحالي على شكل رمز (<code>Symbol</code>). | ||
===[[Ruby/Kernel/ | ===[[Ruby/Kernel/ dir|__dir__]]=== | ||
يعيد المسار المطلق القانوني (canonicalized absolute path) لمجلد الملف الذي استُدعي هذا | يعيد المسار المطلق القانوني (canonicalized absolute path) لمجلد الملف الذي استُدعي هذا منه. | ||
===[[Ruby/Kernel/ | ===[[Ruby/Kernel/ method|__method__]]=== | ||
يعيد | يعيد الاسم المعطى للتابع الحالي عند تعريفه على شكل رمز (<code>Symbol</code>). | ||
===[[Ruby/Kernel/60 | | ===[[Ruby/Kernel/60|`]]=== | ||
يعيد مجرى المخرجات القياسية (standard output) لتنفيذ التعليمة المعطاة في محث فرعي (subshell). | يعيد مجرى المخرجات القياسية (standard output) لتنفيذ التعليمة المعطاة في محث فرعي (subshell). | ||
===[[Ruby/Kernel/abort | | ===[[Ruby/Kernel/abort|abort]]=== | ||
ينهي | ينهي التنفيذ على الفور، عبر استدعاء <code>Kernel.exit(false)</code>. | ||
===[[Ruby/Kernel/ | ===[[Ruby/Kernel/at exit|at_exit]]=== | ||
يحول | يحول الكتلة البرمجية إلى كائن من النوع <code>Proc</code> | ||
===[[Ruby/Kernel/autoload | | ===[[Ruby/Kernel/autoload|autoload]]=== | ||
يسجل | يسجل اسم الملف <code>filename</code> لكي يُحمَّل. | ||
===[[Ruby/Kernel/autoload-3F | | ===[[Ruby/Kernel/autoload-3F|autoload?]]=== | ||
يعيد | يعيد اسم الملف <code>filename</code> ليتم تحميله إذا تم تسجيل الوسيط المعطى <code>name</code> على شكل <code>autoload</code>. | ||
===[[Ruby/Kernel/binding | | ===[[Ruby/Kernel/binding|binding]]=== | ||
يعيد | يعيد كائنًا من النوع <code>Binding</code>، والذي يصف ويحدد ارتباطات المتغيرات والتوابع لحظة الاستدعاء. | ||
===[[Ruby/Kernel/ | ===[[Ruby/Kernel/block given-3F|block_given?]]=== | ||
يعيد | يعيد القيمة <code>true</code> إذا كان <code>yield</code> سينفذ كتلة برمجية في السياق الحالي. | ||
===[[Ruby/Kernel/callcc | | ===[[Ruby/Kernel/callcc|callcc]]=== | ||
يولد التابع <code>callcc</code> كائنًا من النوع <code>[[Ruby/Continuation|Continuation]]</code>، والذي يُمرّر إلى الكتلة البرمجية المعطاة. سيكون عليك أن تستورد <code>'continuation'</code> قبل استخدام هذا التابع. | يولد التابع <code>callcc</code> كائنًا من النوع <code>[[Ruby/Continuation|Continuation]]</code>، والذي يُمرّر إلى الكتلة البرمجية المعطاة. سيكون عليك أن تستورد <code>'continuation'</code> قبل استخدام هذا التابع. | ||
===[[Ruby/Kernel/caller|caller]]=== | |||
===[[Ruby/Kernel/caller | | يعيد مكدس التنفيذ الحالي (execution stack)، | ||
يعيد | ===[[Ruby/Kernel/caller locations|caller_locations]]=== | ||
===[[Ruby/Kernel/ | يعيد مكدس التنفيذ الحالي، والذي هو عبارة عن مصفوفة تحتوي كائنات تعقب (backtrace location objects). | ||
يعيد | ===[[Ruby/Kernel/catch|<code>catch</code>]]=== | ||
===[[Ruby/Kernel/catch | | ينفذ <code>catch</code> كتلته البرمجية. | ||
ينفذ <code>catch</code> كتلته البرمجية | ===[[Ruby/Kernel/chomp|<code>chomp</code>]]=== | ||
يكافئ التعبير <code>$_ = $_.chomp( string )</code>. | |||
يكافئ | ===[[Ruby/Kernel/chop|<code>chop</code>]]=== | ||
===[[Ruby/Kernel/chop | | يكافئ التابع <code>chop</code> التعبير <code>($_.dup).chop!</code> ، باستثناء أنّ <code>nil</code> لا تُعاد أبدًا. | ||
يكافئ التابع <code>chop</code> التعبير <code>($_.dup).chop!</code> ، باستثناء أنّ <code>nil</code> لا تُعاد أبدًا | ===[[Ruby/Kernel/eval|<code>eval</code>]]=== | ||
===[[Ruby/Kernel/eval | | يقيم (Evaluates) تعبيرات روبي الموجودة في سلاسل نصية. | ||
يقيم (Evaluates) | ===[[Ruby/Kernel/exec|<code>exec</code>]]=== | ||
===[[Ruby/Kernel/exec | | يستبدل العملية الحالية عن طريق تشغيل الأمر الخارجي المعطى. | ||
يستبدل | ===[[Ruby/Kernel/exit|<code>exit</code>]]=== | ||
===[[Ruby/Kernel/exit | | يبدأ عملية إنهاء البرنامج النصي لروبي، عن طريق إطلاق استثناء <code>SystemExit</code>. | ||
يبدأ | ===[[Ruby/Kernel/exit-21|<code>exit!</code>]]=== | ||
===[[Ruby/Kernel/exit-21 | | ينهي العملية على الفور. لا يتم تنفيذ أي معالجات إنهاء (exit handlers). | ||
ينهي العملية على الفور. لا يتم تنفيذ أي معالجات إنهاء (exit handlers). | ===[[Ruby/Kernel/fail|<code>fail</code>]]=== | ||
===[[Ruby/Kernel/fail | | في حال استدعاء هذا التابع بدون تمرير أي معامل، فسيُطلق الاستثناء في <code>$!</code> أو يطلق الخطأ <code>[[Ruby/RuntimeError|RuntimeError]]</code> إذا كان <code>$!</code> يساوي <code>nil</code>. | ||
في حال استدعاء | ===[[Ruby/Kernel/fork|<code>fork</code>]]=== | ||
===[[Ruby/Kernel/fork | | ينشئ عملية فرعية (subprocess). | ||
ينشئ | ===[[Ruby/Kernel/format|<code>format</code>]]=== | ||
===[[Ruby/Kernel/format | | يعيد السلسلة النصية المعطاة بعد تنسيقها بشكل معين. | ||
يعيد | ===[[Ruby/Kernel/gets|<code>gets</code>]]=== | ||
===[[Ruby/Kernel/gets | | يجلب التابع <code>gets</code> (ويسندها إلى <code>$_</code>) السطر التالي من قائمة الملفات في المجرى <code>ARGV</code> (أو <code>$*</code>)، أو من مجرى الإدخال القياسي في حالة عدم تمرير أي ملفات في سطر الأوامر. | ||
===[[Ruby/Kernel/global variables|<code>global_variables</code>]]=== | |||
يعيد مصفوفة تضم أسماء المتغيرات العامة (global variables). | |||
يعيد | ===[[Ruby/Kernel/gsub|<code>gsub</code>]]=== | ||
===[[Ruby/Kernel/gsub | | يكافئ التعبير <code>$_.gsub...</code>، باستثناء أنه سيتم تحديث <code>$_</code> في حال حدوث استبدال. | ||
يكافئ | ===[[Ruby/Kernel/iterator-3F|<code>iterator?</code>]]=== | ||
===[[Ruby/Kernel/iterator-3F | | يعيد القيمة <code>true</code> إذا كان <code>yield</code> سينفذ كتلة برمجية في السياق الراهن. لقد أصبح الشكل <code>iterator?</code> مهملًا إلى حد ما. | ||
يعيد | ===[[Ruby/Kernel/lambda|<code>lambda</code>]]=== | ||
===[[Ruby/Kernel/lambda | | يكافئ التابع <code>lambda</code> التعبير <code>Proc.new</code>، باستثناء أنّ الكائنات <code>Proc</code> الناتجة ستتحقق من عدد الوسائط الممررة عند استدعائها. | ||
يكافئ | ===[[Ruby/Kernel/load|<code>load</code>]]=== | ||
===[[Ruby/Kernel/load | | يحمّل التابع <code>load</code> وينفّذ برنامج روبي في الملف المعطى. | ||
===[[Ruby/Kernel/local variables|<code>local_variables</code>]]=== | |||
===[[Ruby/Kernel/ | يعيد التابع <code>local_variables</code> مصفوفة تضم أسماء المتغيرات المحلية الحالية. | ||
يعيد | ===[[Ruby/Kernel/loop|<code>loop</code>]]=== | ||
===[[Ruby/Kernel/loop | | ينفذ التابع <code>loop</code> الكتلة البرمجية المعطاة بشكل متكرر. | ||
ينفذ | ===[[Ruby/Kernel/open|<code>open</code>]]=== | ||
===[[Ruby/Kernel/open | | ينشئ التابع <code>open</code> كائنًا من النوع <code>[[Ruby/IO|IO]]</code> متصلًا بالمجرى أو الملف أو العملية الفرعية (subprocess) المحددة. | ||
ينشئ | ===[[Ruby/Kernel/p|<code>p</code>]]=== | ||
===[[Ruby/Kernel/p | | يكتب التابع <code>p</code> في مجرى الخرج القياسي للبرنامج ناتج التعبير <code>obj.inspect</code> مباشرة متبوعًا بسطر جديد لكل كائن من الكائنات الممررة إليه. | ||
يكتب التابع <code>p</code> في مجرى | ===[[Ruby/Kernel/print|<code>print</code>]]=== | ||
===[[Ruby/Kernel/print | | يطبع التابع <code>print</code> الكائنات الممررة إليه بالتتابع على المجرى <code>stdout$</code>. | ||
يطبع | ===[[Ruby/Kernel/printf|<code>printf</code>]]=== | ||
===[[Ruby/Kernel/printf | | يكافئ التعبير <code>io.write(sprintf(string, obj, ...))</code>. | ||
يكافئ | ===[[Ruby/Kernel/proc|<code>proc</code>]]=== | ||
===[[Ruby/Kernel/proc | | يكافي التعبير <code>Proc.new</code>. | ||
يكافي | ===[[Ruby/Kernel/putc|<code>putc</code>]]=== | ||
===[[Ruby/Kernel/putc | | يكافئ التعبير <code>$stdout.putc(int)</code> أي يطبع القيمة الممرَّرة إليه على مجرى الخرج القياسي. | ||
يكافئ | ===[[Ruby/Kernel/puts|<code>puts</code>]]=== | ||
===[[Ruby/Kernel/puts | | يكافئ puts التعبير: <code>$stdout.puts(obj, ...)</code>؛ أي يطبع السلسلة النصية المُمرَّرة إليه على مجرى الخرج القياسي. | ||
يكافئ | ===[[Ruby/Kernel/raise|raise]]=== | ||
في حال عدم تمريرأي وسائط، سيطلق raise استثناء في <code>$!</code> أو يطلق <code>RuntimeError</code> إن كان <code>$!</code> يساوي <code>nil</code>. | |||
في حال عدم تمريرأي وسائط، سيطلق | ===[[Ruby/Kernel/rand|rand]]=== | ||
===[[Ruby/Kernel/rand | | في حال استدعاء <code>rand</code> بدون تمرير وسائط إليه، أو إن كان <code>max.to_i.abs == 0</code>، فسيعيد <code>rand</code> عدد عشري شبه عشوائي (pseudo-random) محصور بين 0.0 و 1.0، متضمنا 0.0، وباستثناء 1.0. | ||
في حال استدعاء | ===[[Ruby/Kernel/readline|readline]]=== | ||
===[[Ruby/Kernel/readline | | يكافئ <code>readline</code> التعبير <code>Kernel::gets</code> ، باستثناء أنّ <code>readline</code> تطلق خطأ <code>EOFError</code> عند نهاية الملف. | ||
يكافئ | ===[[Ruby/Kernel/readlines|readlines]]=== | ||
===[[Ruby/Kernel/readlines | | يعيد <code>readlines</code> مصفوفة تحتوي الأسطر المُعادة من استدعاء <code>Kernel.gets( sep )</code> حتى نهاية الملف. | ||
يعيد | ===[[Ruby/Kernel/require|require]]=== | ||
===[[Ruby/Kernel/require | | بحمل <code>require</code> الوسيط المُعطى <code>name</code>، | ||
بحمل | ===[[Ruby/Kernel/require relative|require_relative]]=== | ||
عند استدعاء هذا ستحاول روبي تحميل المكتبة المسماة في الوسيط المعطى <code>string</code> نسبة إلى مسار الملف المطلوب. | |||
عند استدعاء هذا | ===[[Ruby/Kernel/select|select]]=== | ||
===[[Ruby/Kernel/select | | |||
يستدعي select(2). ويقوم بمراقبة المصفوفة المعطاة المكونة من كائنات <code>IO</code>، وينتظر حتى يكون أحد كائنات <code>IO</code> جاهزًا للقراءة ، وجاهزا للكتابة، ويكون لها استثناءات معلقة (pending exceptions) على التوالي، ثم يعيد مصفوفة تحتوي على مصفوفات مكونة من تلك كائنات <code>IO</code> السابقة. ستُعاد القيمة <code>nil</code> إذا تم إعطاء قيمة للوسيط الاختياري timeout، ولم يكن هناك أي كائن <code>IO</code> جاهزًا خلال timeout ثانية. | يستدعي select(2). ويقوم بمراقبة المصفوفة المعطاة المكونة من كائنات <code>IO</code>، وينتظر حتى يكون أحد كائنات <code>IO</code> جاهزًا للقراءة ، وجاهزا للكتابة، ويكون لها استثناءات معلقة (pending exceptions) على التوالي، ثم يعيد مصفوفة تحتوي على مصفوفات مكونة من تلك كائنات <code>IO</code> السابقة. ستُعاد القيمة <code>nil</code> إذا تم إعطاء قيمة للوسيط الاختياري timeout، ولم يكن هناك أي كائن <code>IO</code> جاهزًا خلال timeout ثانية. | ||
===[[Ruby/Kernel/ | ===[[Ruby/Kernel/set trace func|set_trace_func]]=== | ||
يجعل | يجعل set_trace_func الوسيط المعطى proc كمتعقب (handler for tracing)، أو يعطل التعقب إن كان الوسيط يساوي <code>nil</code>. | ||
===[[Ruby/Kernel/sleep | | ===[[Ruby/Kernel/sleep|sleep]]=== | ||
يعلّق | يعلّق sleep المهمة الفرعية (thread) الحالية لعدد من الثواني. | ||
===[[Ruby/Kernel/spawn | | ===[[Ruby/Kernel/spawn|spawn]]=== | ||
ينفذ | ينفذ spawn تعليمة محددة، ثم يعيد معرفها (pid). | ||
===[[Ruby/Kernel/sprintf | | ===[[Ruby/Kernel/sprintf|sprintf]]=== | ||
يعيد | يعيد <code>sprintf</code> السلسلة النصية الناتجة من تطبيق <code>format_string</code> على الوسائط الإضافية. | ||
===[[Ruby/Kernel/srand | | ===[[Ruby/Kernel/srand|srand]]=== | ||
يحدد | يحدد <code>srand</code> بذرة مولد الأعداد شبه العشوائية (system pseudo-random number generator)، | ||
===[[Ruby/Kernel/sub | | ===[[Ruby/Kernel/sub|sub]]=== | ||
يكافئ | يكافئ <code>sub</code> التعبير <code>$_.sub( args )</code> ، باستثناء أنه سيتم تحديث <code>$_</code> إذا حدث استبدال. | ||
===[[Ruby/Kernel/syscall | | ===[[Ruby/Kernel/syscall|syscall]]=== | ||
يستدعي | يستدعي <code>syscall</code> دالة نظام التشغيل المحددة بواسطة <code>num</code> | ||
===[[Ruby/Kernel/system | | ===[[Ruby/Kernel/system|system]]=== | ||
ينفذ التابع <code>system</code> التعليمة المعطاة <code>command…</code> في صدفة فرعية (subshell). تأخذ التعليمة <code>command…</code> أحد الأشكال التالية. | ينفذ التابع <code>system</code> التعليمة المعطاة <code>command…</code> في صدفة فرعية (subshell). تأخذ التعليمة <code>command…</code> أحد الأشكال التالية. | ||
===[[Ruby/Kernel/test | | ===[[Ruby/Kernel/test|test]]=== | ||
يستخدم | يستخدم test الحرف <code>cmd</code> لإجراء عدة اختبارات على الملفات. | ||
===[[Ruby/Kernel/throw | | ===[[Ruby/Kernel/throw|throw]]=== | ||
ينقل التابع <code>throw</code> الضبط (control) إلى نهاية كتلة <code>catch</code> المُترقبة للوسم المعطى (<code>tag</code>). إذا لم يكن هناك كتلة <code>catch</code> لذلك الوسم، فسيطلق خطأ<code>UncaughtThrowError</code>. يوفر الوسيط الاختياري الثاني <code>obj</code> في حال تمريره قيمة لتُعيدها الكتلة <code>catch</code>، وإلا فستعيد<code>nil</code>. للحصول على بعض الأمثلة، انظر صفحة التابع <code>[[Ruby/Kernel/catch|catch]]</code>. | ينقل التابع <code>throw</code> الضبط (control) إلى نهاية كتلة <code>catch</code> المُترقبة للوسم المعطى (<code>tag</code>). إذا لم يكن هناك كتلة <code>catch</code> لذلك الوسم، فسيطلق خطأ<code>UncaughtThrowError</code>. يوفر الوسيط الاختياري الثاني <code>obj</code> في حال تمريره قيمة لتُعيدها الكتلة <code>catch</code>، وإلا فستعيد<code>nil</code>. للحصول على بعض الأمثلة، انظر صفحة التابع <code>[[Ruby/Kernel/catch|catch]]</code>. | ||
===[[Ruby/Kernel/ | ===[[Ruby/Kernel/trace var|trace_var]]=== | ||
يضبط | يضبط <code>trace_var</code> تعقّبات تعيين المتغيرات الكلية. | ||
===[[Ruby/Kernel/trap | | ===[[Ruby/Kernel/trap|trap]]=== | ||
يحدد | يحدد <code>trap</code> معالج الإشارات (handling of signals). | ||
===[[Ruby/Kernel/ | ===[[Ruby/Kernel/untrace var|untrace_var]]=== | ||
يزيل | يزيل <code>untrace_var</code> التعقب للتعليمة المحددة | ||
===[[Ruby/Kernel/warn | | ===[[Ruby/Kernel/warn|warn]]=== | ||
ينقل التابع <code>throw</code> الضبط (control) إلى نهاية كتلة <code>catch</code> المُترقبة للوسم المعطى (<code>tag</code>). إذا لم يكن هناك كتلة <code>catch</code> لذلك الوسم، فسيطلق خطأ<code>UncaughtThrowError</code>. يوفر الوسيط الاختياري الثاني <code>obj</code> في حال تمريره قيمة لتُعيدها الكتلة <code>catch</code>، وإلا فستعيد<code>nil</code>. للحصول على بعض الأمثلة، انظر صفحة التابع <code>[[Ruby/Kernel/catch|catch]]</code>. | ينقل التابع <code>throw</code> الضبط (control) إلى نهاية كتلة <code>catch</code> المُترقبة للوسم المعطى (<code>tag</code>). إذا لم يكن هناك كتلة <code>catch</code> لذلك الوسم، فسيطلق خطأ<code>UncaughtThrowError</code>. يوفر الوسيط الاختياري الثاني <code>obj</code> في حال تمريره قيمة لتُعيدها الكتلة <code>catch</code>، وإلا فستعيد<code>nil</code>. للحصول على بعض الأمثلة، انظر صفحة التابع <code>[[Ruby/Kernel/catch|catch]]</code>. | ||
==مصادر<span> </span>== | ==مصادر<span> </span>== | ||
*[http://ruby-doc.org/core-2.5.1/Kernel.html قسم | *[http://ruby-doc.org/core-2.5.1/Kernel.html قسم الصنف Kernel في توثيق روبي الرسمي.] |
مراجعة 18:23، 15 نوفمبر 2018
تُضمَّن الوحدة Kernel
من طرف الصنف Object
، لذلك فتوابعها متاحة في كل كائنات روبي.
توابع نسخ الصنف Kernel
مُوثّقة في صفحة الصنف Object
، أما توابع الوحدة Kernel
فهي مُوثقة هنا. تستدعى هذه التوابع بدون مستقبل (receiver)، وبالتالي يمكن استدعاؤها وفق الشكل الدالي:
sprintf "%.1f", 1.234 #=> "1.2"
توابع الصنف العامة (Public Class Methods)
Array
يعيد الوسيط المعطى على شكل مصفوفة (Array
).
Complex
يعيد ناتج التعبير x + i * y
؛ حيث i
هو الوحدة التخيلية العقدية.
Hash
يحول الوسيط المعطى إلى قاموس Hash
عبر استدعاء arg.to_hash
.
Integer
يحول الوسيط المعطى إلى عدد صحيح (Integer
).
يعيد ناتج العملية x/y
أو الوسيط المعطى arg
على شكل عدد جذري (Rational
).
String
يعيد الوسيط المعطى على شكل سلسلة نصية (String
).
__callee__
يعيد اسم الحالي على شكل رمز (Symbol
).
__dir__
يعيد المسار المطلق القانوني (canonicalized absolute path) لمجلد الملف الذي استُدعي هذا منه.
__method__
يعيد الاسم المعطى للتابع الحالي عند تعريفه على شكل رمز (Symbol
).
`
يعيد مجرى المخرجات القياسية (standard output) لتنفيذ التعليمة المعطاة في محث فرعي (subshell).
abort
ينهي التنفيذ على الفور، عبر استدعاء Kernel.exit(false)
.
at_exit
يحول الكتلة البرمجية إلى كائن من النوع Proc
autoload
يسجل اسم الملف filename
لكي يُحمَّل.
autoload?
يعيد اسم الملف filename
ليتم تحميله إذا تم تسجيل الوسيط المعطى name
على شكل autoload
.
binding
يعيد كائنًا من النوع Binding
، والذي يصف ويحدد ارتباطات المتغيرات والتوابع لحظة الاستدعاء.
block_given?
يعيد القيمة true
إذا كان yield
سينفذ كتلة برمجية في السياق الحالي.
callcc
يولد التابع callcc
كائنًا من النوع Continuation
، والذي يُمرّر إلى الكتلة البرمجية المعطاة. سيكون عليك أن تستورد 'continuation'
قبل استخدام هذا التابع.
caller
يعيد مكدس التنفيذ الحالي (execution stack)،
caller_locations
يعيد مكدس التنفيذ الحالي، والذي هو عبارة عن مصفوفة تحتوي كائنات تعقب (backtrace location objects).
catch
ينفذ catch
كتلته البرمجية.
chomp
يكافئ التعبير $_ = $_.chomp( string )
.
chop
يكافئ التابع chop
التعبير ($_.dup).chop!
، باستثناء أنّ nil
لا تُعاد أبدًا.
eval
يقيم (Evaluates) تعبيرات روبي الموجودة في سلاسل نصية.
exec
يستبدل العملية الحالية عن طريق تشغيل الأمر الخارجي المعطى.
exit
يبدأ عملية إنهاء البرنامج النصي لروبي، عن طريق إطلاق استثناء SystemExit
.
exit!
ينهي العملية على الفور. لا يتم تنفيذ أي معالجات إنهاء (exit handlers).
fail
في حال استدعاء هذا التابع بدون تمرير أي معامل، فسيُطلق الاستثناء في $!
أو يطلق الخطأ RuntimeError
إذا كان $!
يساوي nil
.
fork
ينشئ عملية فرعية (subprocess).
format
يعيد السلسلة النصية المعطاة بعد تنسيقها بشكل معين.
gets
يجلب التابع gets
(ويسندها إلى $_
) السطر التالي من قائمة الملفات في المجرى ARGV
(أو $*
)، أو من مجرى الإدخال القياسي في حالة عدم تمرير أي ملفات في سطر الأوامر.
global_variables
يعيد مصفوفة تضم أسماء المتغيرات العامة (global variables).
gsub
يكافئ التعبير $_.gsub...
، باستثناء أنه سيتم تحديث $_
في حال حدوث استبدال.
iterator?
يعيد القيمة true
إذا كان yield
سينفذ كتلة برمجية في السياق الراهن. لقد أصبح الشكل iterator?
مهملًا إلى حد ما.
lambda
يكافئ التابع lambda
التعبير Proc.new
، باستثناء أنّ الكائنات Proc
الناتجة ستتحقق من عدد الوسائط الممررة عند استدعائها.
load
يحمّل التابع load
وينفّذ برنامج روبي في الملف المعطى.
local_variables
يعيد التابع local_variables
مصفوفة تضم أسماء المتغيرات المحلية الحالية.
loop
ينفذ التابع loop
الكتلة البرمجية المعطاة بشكل متكرر.
open
ينشئ التابع open
كائنًا من النوع IO
متصلًا بالمجرى أو الملف أو العملية الفرعية (subprocess) المحددة.
p
يكتب التابع p
في مجرى الخرج القياسي للبرنامج ناتج التعبير obj.inspect
مباشرة متبوعًا بسطر جديد لكل كائن من الكائنات الممررة إليه.
print
يطبع التابع print
الكائنات الممررة إليه بالتتابع على المجرى stdout$
.
printf
يكافئ التعبير io.write(sprintf(string, obj, ...))
.
proc
يكافي التعبير Proc.new
.
putc
يكافئ التعبير $stdout.putc(int)
أي يطبع القيمة الممرَّرة إليه على مجرى الخرج القياسي.
puts
يكافئ puts التعبير: $stdout.puts(obj, ...)
؛ أي يطبع السلسلة النصية المُمرَّرة إليه على مجرى الخرج القياسي.
raise
في حال عدم تمريرأي وسائط، سيطلق raise استثناء في $!
أو يطلق RuntimeError
إن كان $!
يساوي nil
.
rand
في حال استدعاء rand
بدون تمرير وسائط إليه، أو إن كان max.to_i.abs == 0
، فسيعيد rand
عدد عشري شبه عشوائي (pseudo-random) محصور بين 0.0 و 1.0، متضمنا 0.0، وباستثناء 1.0.
readline
يكافئ readline
التعبير Kernel::gets
، باستثناء أنّ readline
تطلق خطأ EOFError
عند نهاية الملف.
readlines
يعيد readlines
مصفوفة تحتوي الأسطر المُعادة من استدعاء Kernel.gets( sep )
حتى نهاية الملف.
require
بحمل require
الوسيط المُعطى name
،
require_relative
عند استدعاء هذا ستحاول روبي تحميل المكتبة المسماة في الوسيط المعطى string
نسبة إلى مسار الملف المطلوب.
select
يستدعي select(2). ويقوم بمراقبة المصفوفة المعطاة المكونة من كائنات IO
، وينتظر حتى يكون أحد كائنات IO
جاهزًا للقراءة ، وجاهزا للكتابة، ويكون لها استثناءات معلقة (pending exceptions) على التوالي، ثم يعيد مصفوفة تحتوي على مصفوفات مكونة من تلك كائنات IO
السابقة. ستُعاد القيمة nil
إذا تم إعطاء قيمة للوسيط الاختياري timeout، ولم يكن هناك أي كائن IO
جاهزًا خلال timeout ثانية.
set_trace_func
يجعل set_trace_func الوسيط المعطى proc كمتعقب (handler for tracing)، أو يعطل التعقب إن كان الوسيط يساوي nil
.
sleep
يعلّق sleep المهمة الفرعية (thread) الحالية لعدد من الثواني.
spawn
ينفذ spawn تعليمة محددة، ثم يعيد معرفها (pid).
sprintf
يعيد sprintf
السلسلة النصية الناتجة من تطبيق format_string
على الوسائط الإضافية.
srand
يحدد srand
بذرة مولد الأعداد شبه العشوائية (system pseudo-random number generator)،
sub
يكافئ sub
التعبير $_.sub( args )
، باستثناء أنه سيتم تحديث $_
إذا حدث استبدال.
syscall
يستدعي syscall
دالة نظام التشغيل المحددة بواسطة num
system
ينفذ التابع system
التعليمة المعطاة command…
في صدفة فرعية (subshell). تأخذ التعليمة command…
أحد الأشكال التالية.
test
يستخدم test الحرف cmd
لإجراء عدة اختبارات على الملفات.
throw
ينقل التابع throw
الضبط (control) إلى نهاية كتلة catch
المُترقبة للوسم المعطى (tag
). إذا لم يكن هناك كتلة catch
لذلك الوسم، فسيطلق خطأUncaughtThrowError
. يوفر الوسيط الاختياري الثاني obj
في حال تمريره قيمة لتُعيدها الكتلة catch
، وإلا فستعيدnil
. للحصول على بعض الأمثلة، انظر صفحة التابع catch
.
trace_var
يضبط trace_var
تعقّبات تعيين المتغيرات الكلية.
trap
يحدد trap
معالج الإشارات (handling of signals).
untrace_var
يزيل untrace_var
التعقب للتعليمة المحددة
warn
ينقل التابع throw
الضبط (control) إلى نهاية كتلة catch
المُترقبة للوسم المعطى (tag
). إذا لم يكن هناك كتلة catch
لذلك الوسم، فسيطلق خطأUncaughtThrowError
. يوفر الوسيط الاختياري الثاني obj
في حال تمريره قيمة لتُعيدها الكتلة catch
، وإلا فستعيدnil
. للحصول على بعض الأمثلة، انظر صفحة التابع catch
.