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

من موسوعة حسوب
< Ruby‏ | IO
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>foreach‎</code> الخاص بالصنف <code>IO</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف:...')
 
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby IO]]
 
[[تصنيف: Ruby IO]]
ينفذ التابع <code>foreach</code> الكتلة المعطاة على كل سطر في منفذ [[Ruby/IO|مجرى د/خ]] المسمى، حيث يتم فصل الأسطر بواسطة <code>sep</code>.
+
ينفذ التابع <code>foreach</code> الكتلة المعطاة على كل سطر في منفذ [[Ruby/IO|مجرى د/خ]] المسمى.  
  
في حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف enumerator بدلاً من ذلك.
+
يتم فصل الأسطر بالوسيط <code>sep</code>.
  
 +
في حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف <code>Enumerator</code> بدلاً من ذلك.
  
 
+
إن كان الوسيط الأخيرة عبارة عن [[Ruby/Hash|قاموس]]، فسيتم فتح الوسيط المسمى (keyword argument). راجع صفحة <code>[[Ruby/IO/readlines|readlines]]</code> لمزيد من التفاصيل حول الوسيط <code>getline_args</code>. وانظر أيضا في صفحة <code>[[Ruby/IO/read|read]]</code> لمزيد من التفاصيل حول الوسيط <code>open_args</code>.
<code>produces:</code>
 
 
 
<syntaxhighlight lang="ruby">GOT This is line one
 
GOT This is line two
 
GOT This is line three
 
GOT And so on...‎</syntaxhighlight>
 
 
 
إن كان الوسيط الأخيرة عبارة عن [[Ruby/Hash|قاموس]]، فسيتم فتح الوسيط المسمى (keyword argument). راجع صفحة <code>[[Ruby/IO/readlines|::readlines]]</code> لمزيد من التفاصيل حول getline_args. وانظر أيضا <code>[[Ruby/IO/read|::read]]</code> لمزيد من التفاصيل حول open_args.
 
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">foreach(name, sep=$/ [, getline_args, open_args]) {|line| block }  → nil
 
<syntaxhighlight lang="ruby">foreach(name, sep=$/ [, getline_args, open_args]) {|line| block }  → nil
سطر 26: سطر 19:
 
اسم الملف
 
اسم الملف
 
===<code>sep‎</code>===
 
===<code>sep‎</code>===
 +
فاصل.
 +
 
===<code>getline_args‎</code>===
 
===<code>getline_args‎</code>===
 +
مصفوفة تحتوي أسطر الملف.
 +
 
===<code>open_args‎</code>===
 
===<code>open_args‎</code>===
خيارات الفتح
+
مصفوفة توفر خيارات الفتح.
 
===<code>limit‎</code>===
 
===<code>limit‎</code>===
===<code>...‎</code>===
+
الحد الأقصى للأسطر.
 +
 
 
==القيمة المُعادة==
 
==القيمة المُعادة==
 +
يعيد التابع <code>foreach</code>القيمة <code>nil</code>.
 +
 
==أمثلة==
 
==أمثلة==
 
مثال على استخدام التابع <code>foreach‎</code>:
 
مثال على استخدام التابع <code>foreach‎</code>:
<syntaxhighlight lang="ruby">IO.foreach("testfile") {|x| print "GOT ", x }‎</syntaxhighlight>
+
<syntaxhighlight lang="ruby">IO.foreach("testfile") {|x| print "GOT ", x }‎</syntaxhighlight>الناتج:<syntaxhighlight lang="ruby">GOT This is line one
 +
GOT This is line two
 +
GOT This is line three
 +
GOT And so on...‎</syntaxhighlight>
 
==انظر أيضا==
 
==انظر أيضا==
* التابع <code>[[Ruby/IO/for_fd|for_fd]]</code>: مرادف للتابع <code>IO.new</code>.
+
* التابع <nowiki/>[[Ruby/IO/readlines|<code></code>]]<code>[[Ruby/IO/for_fd|readlines]]</code>: يقرأ أسطر الملف المعطى.
* التابع <code>[[Ruby/IO/new|new]]</code>: يُعيد التابع <code>new</code> كائنًا جديدًا من النوع <code>[[Ruby/IO|IO]]</code> لواصف الملف (file descriptor) المعطى <code>fd</code> (انظر فقرة البنية العامة) والوضع <code>mode</code>.  يمكن استخدام <code>opt</code> لتحديد أجزاء من <code>mode</code> بطريقة أكثر قابلية للقراءة.  انظر أيضًا صفحتي <code>[[Ruby/IO/sysopen|::sysopen]]</code> و <code>[[Ruby/IO/for_fd|::for_fd]]</code>.
 
 
==مصادر==
 
==مصادر==
 
*[http://ruby-doc.org/core-2.5.1/IO.html#method-c-foreach قسم  التابع foreach‎ في الصنف IO‎ في توثيق روبي الرسمي.]
 
*[http://ruby-doc.org/core-2.5.1/IO.html#method-c-foreach قسم  التابع foreach‎ في الصنف IO‎ في توثيق روبي الرسمي.]

مراجعة 21:14، 12 نوفمبر 2018

ينفذ التابع foreach الكتلة المعطاة على كل سطر في منفذ مجرى د/خ المسمى.

يتم فصل الأسطر بالوسيط sep.

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

إن كان الوسيط الأخيرة عبارة عن قاموس، فسيتم فتح الوسيط المسمى (keyword argument). راجع صفحة readlines لمزيد من التفاصيل حول الوسيط getline_args. وانظر أيضا في صفحة read لمزيد من التفاصيل حول الوسيط open_args.

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

foreach(name, sep=$/ [, getline_args, open_args]) {|line| block }   nil
foreach(name, limit [, getline_args, open_args]) {|line| block } nil
foreach(name, sep, limit [, getline_args, open_args]) {|line| block }  nil
foreach(...)   an_enumerator

المعاملات

name‎

اسم الملف

sep‎

فاصل.

getline_args‎

مصفوفة تحتوي أسطر الملف.

open_args‎

مصفوفة توفر خيارات الفتح.

limit‎

الحد الأقصى للأسطر.

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

يعيد التابع foreachالقيمة nil.

أمثلة

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

IO.foreach("testfile") {|x| print "GOT ", x }

الناتج:

GOT This is line one
GOT This is line two
GOT This is line three
GOT And so on...

انظر أيضا

  • التابع readlines: يقرأ أسطر الملف المعطى.

مصادر