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