الفرق بين المراجعتين لصفحة: «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
قيمة آخر تعبير تم تقييمه.