الفرق بين المراجعتين ل"Ruby/LocalJumpError"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'يُطلق الخطأ <code>KeyError</code> عندما لا يكون المفتاح (key) المُحدد موجودًا، وهو صنف فرعي من <code>Ruby/IndexE...')
 
سطر 1: سطر 1:
يُطلق الخطأ <code>KeyError</code> عندما لا يكون المفتاح (key) المُحدد موجودًا، وهو صنف فرعي من <code>[[Ruby/IndexError|IndexError]]</code>.<syntaxhighlight lang="ruby">
+
يُطلق الخطأ <code>LocalJumpError</code> عندما لا تتمكن روبي من الإعادة (yield) كما هو مطلوب. 
h = {"foo" => :bar}
+
 
h.fetch("foo") #=> :bar
+
يحدث هذا مثلا، عند محاولة الإعادة  (yield) في غياب أي كتلة برمجية.<syntaxhighlight lang="ruby">
h.fetch("baz") #=> KeyError: key not found: "baz"
+
def call_block
 +
  yield 42
 +
end
 +
call_block
 +
</syntaxhighlight>تطلق الشيفرة أعلاه استثناء:<syntaxhighlight lang="ruby">
 +
LocalJumpError: no block given (yield)
 +
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
==توابع الصنف العامة (Public Class Methods)==
+
==توابع الكائن العامة (Public Instance Methods)==
===[[Ruby/KeyError/key | التابع key]]===
+
=== [[Ruby/LocalJumpError/exit value|التابع exit_value]]===
يعيد المفتاح الذي تسبب في الاستثناء <code>KeyError</code>.
+
يعيد التابع <code>exit_value</code> قيمة الخروج المرتبطة بالاستثناء <code>[[Ruby/LocalJumpError|LocalJumpError]]</code>.
===[[Ruby/KeyError/receiver | التابع receiver]]===
+
=== [[Ruby/LocalJumpError/reason|التابع reason]]===
يعيد المتلقي (receiver) المقترن بالاستثناء <code>KeyError</code>.
+
يعيد التابع <code>reason</code> سبب إنهاء الكتلة البرمجية: ‎ <code>:break</code>أو <code>‎:redo</code> أو <code>‎:retry</code> أو <code>‎:next</code> أو ‎ <code>:return</code> أو ‎<code>:noreason</code> .
 
==مصادر<span> </span>==
 
==مصادر<span> </span>==
*[http://ruby-doc.org/core-2.5.1/KeyError.html قسم  الصنف LocalJumpError في توثيق روبي الرسمي.]
+
*[http://ruby-doc.org/core-2.5.1/LocalJumpError.html قسم  الصنف LocalJumpError في توثيق روبي الرسمي.]
 
<noinclude>{{DISPLAYTITLE: صفحة الصنف <code>LocalJumpError</code> في روبي}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: صفحة الصنف <code>LocalJumpError</code> في روبي}}</noinclude>
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby LocalJumpError]]
 
[[تصنيف: Ruby LocalJumpError]]

مراجعة 10:23، 24 أكتوبر 2018

يُطلق الخطأ LocalJumpError عندما لا تتمكن روبي من الإعادة (yield) كما هو مطلوب.

يحدث هذا مثلا، عند محاولة الإعادة (yield) في غياب أي كتلة برمجية.

def call_block
  yield 42
end
call_block

تطلق الشيفرة أعلاه استثناء:

LocalJumpError: no block given (yield)

توابع الكائن العامة (Public Instance Methods)

التابع exit_value

يعيد التابع exit_value قيمة الخروج المرتبطة بالاستثناء LocalJumpError.

التابع reason

يعيد التابع reason سبب إنهاء الكتلة البرمجية: ‎ :breakأو ‎:redo أو ‎:retry أو ‎:next أو ‎ :return أو ‎:noreason .

مصادر