الفرق بين المراجعتين لصفحة: «Ruby/Kernel/throw»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) تدقيق |
||
| سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby Kernel]] | [[تصنيف: Ruby Kernel]] | ||
ينقل التابع <code>throw</code> الضبط (control) إلى نهاية | ينقل التابع <code>throw</code> الضبط (control) إلى نهاية الكتلة [[Ruby/Kernel/catch|<code>catch</code>]] المُترقبة للوسم المعطى (<code>tag</code>). إذا لم يكن هناك كتلة [[Ruby/Kernel/catch|<code>catch</code>]] لذلك الوسم، فسيطلق الخطأ <code>[[Ruby/UncaughtThrowError|UncaughtThrowError]]</code>. يوفر الوسيط الاختياري الثاني في حال تمريره قيمة لتُعيدها الكتلة [[Ruby/Kernel/catch|<code>catch</code>]]، وإلا فستعيد <code>nil</code>. للحصول على بعض الأمثلة، انظر صفحة التابع <code>[[Ruby/Kernel/catch|catch]]</code>. | ||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">throw(tag [, obj])</syntaxhighlight> | <syntaxhighlight lang="ruby">throw(tag [, obj])</syntaxhighlight> | ||
==المعاملات== | ==المعاملات== | ||
===<code>tag</code>=== | ===<code>tag</code>=== | ||
الوسم الذي تترقبه <code>catch | الوسم الذي تترقبه الكتلة [[Ruby/Kernel/catch|<code>catch</code>]]. | ||
===<code>obj</code>=== | ===<code>obj</code>=== | ||
وسيط اختياري يوفر في حال تمريره قيمة لتُعيدها الكتلة <code>catch | وسيط اختياري يوفر -في حال تمريره- قيمة لتُعيدها الكتلة [[Ruby/Kernel/catch|<code>catch</code>]]. | ||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع <code>[[Ruby/Kernel/catch|catch]]</code>: ينفذ | * التابع <code>[[Ruby/Kernel/catch|catch]]</code>: ينفذ كتلته البرمجية. في حال عدم استدعاء <code>throw</code>، فستنفّذ الكتلة بشكل طبيعي، وسيعيد التابع <code>catch</code> قيمة آخر تعبير تم تقييمه. | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/Kernel.html#method-i-throw قسم | *[http://ruby-doc.org/core-2.5.1/Kernel.html#method-i-throw قسم التابع throw في الصنف Kernel في توثيق روبي الرسمي.] | ||
المراجعة الحالية بتاريخ 06:16، 17 نوفمبر 2018
ينقل التابع throw الضبط (control) إلى نهاية الكتلة catch المُترقبة للوسم المعطى (tag). إذا لم يكن هناك كتلة catch لذلك الوسم، فسيطلق الخطأ UncaughtThrowError. يوفر الوسيط الاختياري الثاني في حال تمريره قيمة لتُعيدها الكتلة catch، وإلا فستعيد nil. للحصول على بعض الأمثلة، انظر صفحة التابع catch.
البنية العامة
throw(tag [, obj])
المعاملات
tag
الوسم الذي تترقبه الكتلة catch.
obj
وسيط اختياري يوفر -في حال تمريره- قيمة لتُعيدها الكتلة catch.
انظر أيضا
- التابع
catch: ينفذ كتلته البرمجية. في حال عدم استدعاءthrow، فستنفّذ الكتلة بشكل طبيعي، وسيعيد التابعcatchقيمة آخر تعبير تم تقييمه.