الفرق بين المراجعتين لصفحة: «Ruby/IOError»

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: صفحة الصنف <code>IOError</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby IOError يُطلق الاستث...'
 
لا ملخص تعديل
سطر 2: سطر 2:
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby IOError]]
[[تصنيف: Ruby IOError]]
يُطلق الاستثناء <code>IOError</code> في حال امتلاء المُكدس (stack overflow).<syntaxhighlight lang="ruby">
يُطلق الاستثناء <code>IOError</code> عند فشل عملية [[Ruby/IO|د/خ]] (IO operation)<syntaxhighlight lang="ruby">
def me_myself_and_i
File.open("/etc/hosts") {|f| f << "example"}
  me_myself_and_i
  #=> IOError: not opened for writing
end
me_myself_and_i
</syntaxhighlight>سيُطلق الاستثناء:<syntaxhighlight lang="ruby">
SystemStackError: stack level too deep


File.open("/etc/hosts") {|f| f.close; f.read }
  #=> IOError: closed stream
</syntaxhighlight>تذكر أن فشل بعض عمليات [[Ruby/IO|د/خ]] (IO operation) قد يؤدي إلى  إطلاق الاستثناءات <code>SystemCallError</code>، وهذه الاستثناءات ليست متفرعة من الصنف <code>IOError</code>.<syntaxhighlight lang="ruby">
File.open("does/not/exist")
  #=> Errno::ENOENT: No such file or directory - does/not/exist
</syntaxhighlight>
</syntaxhighlight>


==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/SystemStackError.html قسم  الصنف IOError في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/IOError.html قسم  الصنف IOError في توثيق روبي الرسمي.]

مراجعة 23:36، 13 نوفمبر 2018

يُطلق الاستثناء IOError عند فشل عملية د/خ (IO operation)

File.open("/etc/hosts") {|f| f << "example"}
  #=> IOError: not opened for writing

File.open("/etc/hosts") {|f| f.close; f.read }
  #=> IOError: closed stream

تذكر أن فشل بعض عمليات د/خ (IO operation) قد يؤدي إلى إطلاق الاستثناءات SystemCallError، وهذه الاستثناءات ليست متفرعة من الصنف IOError.

File.open("does/not/exist")
  #=> Errno::ENOENT: No such file or directory - does/not/exist

مصادر