الفرق بين المراجعتين لصفحة: «Ruby/Dir/foreach»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط مراجعة وتدقيق |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: التابع <code>foreach | <noinclude>{{DISPLAYTITLE: التابع <code>Dir.foreach</code> في روبي}}</noinclude> | ||
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby Dir]] | [[تصنيف: Ruby Dir]] | ||
يستدعي التابع <code>foreach</code> الكتلة المعطاة على كل ملف من الملفات | يستدعي التابع <code>foreach</code> الكتلة المعطاة على كل ملف من الملفات الموجودة في المجلد المحدد، إذ يمُمرّر أسماء تلك الملفات كوسائط للكتلة. | ||
في حال عدم تمرير أي كتلة، | في حال عدم تمرير أي كتلة، يعاد كائنٌ من النوع [[Ruby/Enumerator|<code>enumerator</code>]]. | ||
==البنية العامة== | |||
== البنية العامة == | |||
<syntaxhighlight lang="ruby"> | <syntaxhighlight lang="ruby"> | ||
foreach( dirname ) {| filename | block } → nil | foreach( dirname ) {| filename | block } → nil | ||
foreach( dirname, encoding: enc ) {| filename | block } → nil | foreach( dirname, encoding: enc ) {| filename | block } → nil | ||
foreach( dirname ) → an_enumerator | foreach( dirname ) → an_enumerator | ||
foreach( dirname, encoding: enc ) → an_enumerator | foreach( dirname, encoding: enc ) → an_enumerator | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==المعاملات== | |||
== المعاملات == | ===<code>dirname</code>=== | ||
اسم المجلد المعطى المراد تنفيذ الكتلة <code>block</code> على كل عنصر من عناصره. | |||
=== <code> | ===<code>encoding</code>=== | ||
ترميز المجلد المعطى. | |||
==القيمة المعادة== | |||
=== <code>encoding</code> === | ستُعاد القيمة <code>nil</code> إن أعطيت كتلةٌ ونُفِّذت على كل ملف من ملفاته، وإلا فسيعاد كائنٌ من النوع [[Ruby/Enumerator|<code>enumerator</code>]]. | ||
==أمثلة== | |||
مثال عن استخدام التابع <code>foreach</code> على المجلد <code>testdir</code> الذي يحوي ملفين عاديين (<code>config.h</code> و <code>main.rb</code>)، والمجلد الأب (<code>..</code>)، والمجلد نفسه (<code>.</code>):<syntaxhighlight lang="ruby"> | |||
== القيمة | |||
== أمثلة == | |||
مثال عن استخدام التابع <code>foreach</code> على المجلد <code>testdir</code> الذي | |||
Dir.foreach("testdir") {|x| puts "Got #{x}" } | Dir.foreach("testdir") {|x| puts "Got #{x}" } | ||
</syntaxhighlight>سينتج:<syntaxhighlight lang="ruby"> | </syntaxhighlight>سينتج عند تنفيذه:<syntaxhighlight lang="ruby"> | ||
Got . | Got . | ||
Got .. | Got .. | ||
سطر 36: | سطر 30: | ||
Got main.rb | Got main.rb | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | |||
== | *التابع <code>[[Ruby/Dir/each|each]]</code>: يستدعي الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد، إذ يمُمرّر أسماء تلك الملفات كوسائط للكتلة. | ||
* التابع <code>[[Ruby/Dir/each|each]]</code>: يستدعي | *التابع <code>[[Ruby/Dir/each child|each_child]]</code>: يستدعي الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد باستثناء "<code>..</code>" و "<code>.</code>"، إذ يمُمرّر أسماء تلك الملفات كوسائط للكتلة. | ||
* التابع <code>[[Ruby/Dir/each child|each_child]]</code> | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/Dir.html#method-c-foreach قسم التابع foreach في الصنف Dir في توثيق روبي الرسمي.] | |||
== مصادر == | |||
* [http://ruby-doc.org/core-2.5.1/Dir.html#method-c-foreach قسم |
المراجعة الحالية بتاريخ 23:40، 10 نوفمبر 2018
يستدعي التابع foreach
الكتلة المعطاة على كل ملف من الملفات الموجودة في المجلد المحدد، إذ يمُمرّر أسماء تلك الملفات كوسائط للكتلة.
في حال عدم تمرير أي كتلة، يعاد كائنٌ من النوع enumerator
.
البنية العامة
foreach( dirname ) {| filename | block } → nil
foreach( dirname, encoding: enc ) {| filename | block } → nil
foreach( dirname ) → an_enumerator
foreach( dirname, encoding: enc ) → an_enumerator
المعاملات
dirname
اسم المجلد المعطى المراد تنفيذ الكتلة block
على كل عنصر من عناصره.
encoding
ترميز المجلد المعطى.
القيمة المعادة
ستُعاد القيمة nil
إن أعطيت كتلةٌ ونُفِّذت على كل ملف من ملفاته، وإلا فسيعاد كائنٌ من النوع enumerator
.
أمثلة
مثال عن استخدام التابع foreach
على المجلد testdir
الذي يحوي ملفين عاديين (config.h
و main.rb
)، والمجلد الأب (..
)، والمجلد نفسه (.
):
Dir.foreach("testdir") {|x| puts "Got #{x}" }
سينتج عند تنفيذه:
Got .
Got ..
Got config.h
Got main.rb
انظر أيضًا
- التابع
each
: يستدعي الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد، إذ يمُمرّر أسماء تلك الملفات كوسائط للكتلة. - التابع
each_child
: يستدعي الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد باستثناء "..
" و ".
"، إذ يمُمرّر أسماء تلك الملفات كوسائط للكتلة.