الفرق بين المراجعتين لصفحة: «Ruby/IO/each»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>IO.each</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method [[تصنيف: Ruby IO]...' |
لا ملخص تعديل |
||
| سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby IO]] | [[تصنيف: Ruby IO]] | ||
ينفذ التابع <code>each</code> الكتلة المعطاة لكل سطر في [[Ruby/IO|مجرى د/خ]] | ينفذ التابع <code>each</code> الكتلة المعطاة لكل سطر في [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه، حيث تُفصل الأسطر بالوسيط <code>sep</code>(انظر فقرة البنية العامة). | ||
في | يجب أن يكون [[Ruby/IO|مجرى د/خ]] <code>ios</code> مفتوحا في وضعية القراءة، أو سيُطلق الاستثناء <code>IOError</code>. | ||
في حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف <code>[[Ruby/Enumerator|Enumerator]]</code> بدلاً من ذلك. | |||
راجع صفحة <code>[[Ruby/IO/readlines|readlines]]</code> لمزيد من التفاصيل حول الوسيط <code>getline_args</code>. | |||
راجع صفحة <code>[[Ruby/IO/readlines| | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">each(sep=$/ [, getline_args]) {|line| block } → ios | <syntaxhighlight lang="ruby">each(sep=$/ [, getline_args]) {|line| block } → ios | ||
| سطر 29: | سطر 22: | ||
===<code>sep</code>=== | ===<code>sep</code>=== | ||
فاصل | فاصل | ||
===<code>limit</code>=== | ===<code>limit</code>=== | ||
عدد صحيح يمثل الحد الأٌقصى. | |||
==القيمة المُعادة== | ==القيمة المُعادة== | ||
يعيد التابع <code>each</code> [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه، وفي حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف <code>[[Ruby/Enumerator|Enumerator]]</code> | |||
==أمثلة== | ==أمثلة== | ||
مثال على استخدام التابع <code>each</code>: | مثال على استخدام التابع <code>each</code>:<syntaxhighlight lang="ruby">f = File.new("testfile") | ||
<syntaxhighlight lang="ruby">f = File.new("testfile") | f.each {|line| puts "#{f.lineno}: #{line}" }</syntaxhighlight>الناتج:<syntaxhighlight lang="ruby">1: This is line one | ||
f.each {|line| puts "#{f.lineno}: #{line}" }</syntaxhighlight> | 2: This is line two | ||
3: This is line three | |||
4: And so on...</syntaxhighlight> | |||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع <code>[[Ruby/IO/ | *التابع <code>[[Ruby/IO/each byte|each_byte]]</code>: يستدعي الكتلة المعطاة على لكل بايت (0..255) في [[Ruby/IO|مجرى د/خ]] | ||
* التابع <code>[[Ruby/IO/ | |||
* التابع <code>[[Ruby/IO/each char|each_char]]</code>: يستدعي الكتلة المعطاةة على كل حرف في مجرى د/خ | |||
* التابع <code>[[Ruby/IO/each codepoint|each_codepoint]]</code>: ينفذ الكتلة المعطاة، مع تمرير الرمز العددي (Integer ordinal) لكل حرف من الحروف الموجودة في مجرى د/خ، مع تمرير رمز اليونيكود (codepoint) كوسيط. | |||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-each قسم التابع each في الصنف IO في توثيق روبي الرسمي.] | *[http://ruby-doc.org/core-2.5.1/IO.html#method-i-each قسم التابع each في الصنف IO في توثيق روبي الرسمي.] | ||
مراجعة 12:51، 13 نوفمبر 2018
ينفذ التابع each الكتلة المعطاة لكل سطر في مجرى د/خ الذي استُدعي معه، حيث تُفصل الأسطر بالوسيط sep(انظر فقرة البنية العامة).
يجب أن يكون مجرى د/خ ios مفتوحا في وضعية القراءة، أو سيُطلق الاستثناء IOError.
في حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف Enumerator بدلاً من ذلك.
راجع صفحة readlines لمزيد من التفاصيل حول الوسيط getline_args.
البنية العامة
each(sep=$/ [, getline_args]) {|line| block } → ios
each(limit [, getline_args]) {|line| block } → ios
each(sep, limit [, getline_args]){|line| block } → ios
each(...) → an_enumerator
each_line(sep=$/ [, getline_args]) {|line| block } → ios
each_line(limit [, getline_args]){|line| block } → ios
each_line(sep, limit [, getline_args]) {|line| block } → ios
each_line(...)→ an_enumerator
المعاملات
sep
فاصل
limit
عدد صحيح يمثل الحد الأٌقصى.
القيمة المُعادة
يعيد التابع each مجرى د/خ الذي استُدعي معه، وفي حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف Enumerator
أمثلة
مثال على استخدام التابع each:
f = File.new("testfile")
f.each {|line| puts "#{f.lineno}: #{line}" }
الناتج:
1: This is line one
2: This is line two
3: This is line three
4: And so on...
انظر أيضا
- التابع
each_char: يستدعي الكتلة المعطاةة على كل حرف في مجرى د/خ
- التابع
each_codepoint: ينفذ الكتلة المعطاة، مع تمرير الرمز العددي (Integer ordinal) لكل حرف من الحروف الموجودة في مجرى د/خ، مع تمرير رمز اليونيكود (codepoint) كوسيط.