الفرق بين المراجعتين ل"Ruby/IO/each byte"

من موسوعة حسوب
< Ruby‏ | IO
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>IO.each_byte‎</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تصنيف: Rub...')
 
ط (تدقيق)
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby IO]]
 
[[تصنيف: Ruby IO]]
يستدعي التابع <code>each_byte</code> الكتلة المعطاة مرة لكل بايت (0..255) في [[Ruby/IO|مجرى د/خ]] <code>ios</code>، مع تمرير البايت كوسيط. يجب أن يكون المجرى مفتوحًا في وضعية القراءة أو سيُرفع استثناء <code>IOError</code>.
+
يستدعي التابع <code>each_byte</code> الكتلة المعطاة على كل بايت (0..255) في [[Ruby/IO|المجرى]] الذي استدعي معه.  
  
في حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف enumerator بدلاً من ذلك.
+
يجب أن يكون [[Ruby/IO|المجرى]] مفتوحًا في وضعية القراءة، وإلا سيُطلق الاستثناء <code>[[Ruby/IOError|IOError]]</code>.
 +
 
 +
في حال لم تُعطَ أية كتلة، فسيُعاد كائن من الصنف <code>[[Ruby/Enumerator|Enumerator]]</code> بدلًا من ذلك.
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">each_byte {|byte| block }  → ios
 
<syntaxhighlight lang="ruby">each_byte {|byte| block }  → ios
 
each_byte→ an_enumerator‎</syntaxhighlight>
 
each_byte→ an_enumerator‎</syntaxhighlight>
==القيمة المُعادة==
+
==القيمة المعادة==
 +
يعاد [[Ruby/IO|المجرى]] المعطى بعد تنفيذ الكتلة <code>block</code> على كل بايت من بايتاته، أو يعاد كائن من الصنف <code>[[Ruby/Enumerator|Enumerator]]</code> في حال لم تُعطَ أية كتلة.
 
==أمثلة==
 
==أمثلة==
 
مثال على استخدام التابع <code>each_byte‎</code>:
 
مثال على استخدام التابع <code>each_byte‎</code>:
سطر 16: سطر 19:
 
f.each_byte {|x| checksum ^= x }  #=> #<File:testfile>
 
f.each_byte {|x| checksum ^= x }  #=> #<File:testfile>
 
checksum                          #=> 12‎</syntaxhighlight>
 
checksum                          #=> 12‎</syntaxhighlight>
==انظر أيضا==
+
==انظر أيضًا==
* التابع <code>[[Ruby/IO/each|each]]</code>: ينفذ الكتلة المعطاة لكل سطر في [[Ruby/IO|مجرى د/خ]] <code>ios</code>، حيث تُفصل الأسطر بواسطة <code>sep</code>. يجب أن يكون [[Ruby/IO|مجرى د/خ]] <code>ios</code> مفتوحا في وضعية القراءة، أو سيُطلق الاستثناء <code>IOError</code>.
+
* التابع <code>[[Ruby/IO/each|each]]</code>: ينفذ الكتلة المعطاة على كل سطر في [[Ruby/IO|المجرى]] الذي استُدعي معه.
* التابع <code>[[Ruby/IO/each_char|each_char]]</code>: يستدعي  الكتلة المعطاةة مرة لكل حرف في [[Ruby/IO|مجرى د/خ]] <code>ios</code>، مع تمرير الحرف كوسيط. يجب أن يكون المجرى مفتوحًا في وضعية القراءة أو سيُرفع استثناء <code>IOError</code>.
+
*التابع <code>[[Ruby/IO/each char|each_char]]</code>: يستدعي الكتلة المعطاة على كل محرف في [[Ruby/IO|المجرى]] الذي استدعي معه.
 +
*التابع <code>[[Ruby/IO/each codepoint|each_codepoint]]</code>: يمرر كل عدد من الأعداد الترتيبية (Integer ordinal) لكل محرف من المحارف الموجودة في [[Ruby/IO|المجرى]] الذي استدعي معه إلى الكتلة المعطاة.
 +
*التابع [[Ruby/IO/each line|<code>each_line</code>]]: ينفذ الكتلة المعطاة على كل سطر في [[Ruby/IO|المجرى]] الذي استدعي معه.
 
==مصادر==
 
==مصادر==
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-each_byte قسم التابع each_byte‎ في الصنف IO‎ في توثيق روبي الرسمي.]
+
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-each_byte قسم التابع each_byte‎ في الصنف IO‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 09:26، 22 ديسمبر 2018

يستدعي التابع each_byte الكتلة المعطاة على كل بايت (0..255) في المجرى الذي استدعي معه.

يجب أن يكون المجرى مفتوحًا في وضعية القراءة، وإلا سيُطلق الاستثناء IOError.

في حال لم تُعطَ أية كتلة، فسيُعاد كائن من الصنف Enumerator بدلًا من ذلك.

البنية العامة

each_byte {|byte| block }   ios
each_byte an_enumerator

القيمة المعادة

يعاد المجرى المعطى بعد تنفيذ الكتلة block على كل بايت من بايتاته، أو يعاد كائن من الصنف Enumerator في حال لم تُعطَ أية كتلة.

أمثلة

مثال على استخدام التابع each_byte‎:

f = File.new("testfile")
checksum = 0
f.each_byte {|x| checksum ^= x }   #=> #<File:testfile>
checksum                           #=> 12‎

انظر أيضًا

  • التابع each: ينفذ الكتلة المعطاة على كل سطر في المجرى الذي استُدعي معه.
  • التابع each_char: يستدعي الكتلة المعطاة على كل محرف في المجرى الذي استدعي معه.
  • التابع each_codepoint: يمرر كل عدد من الأعداد الترتيبية (Integer ordinal) لكل محرف من المحارف الموجودة في المجرى الذي استدعي معه إلى الكتلة المعطاة.
  • التابع each_line: ينفذ الكتلة المعطاة على كل سطر في المجرى الذي استدعي معه.

مصادر