التابع Dir.each_child
في روبي
يستدعي التابع 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
: يستدعي الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد باستثناء "..
" و ".
". حيث يمُمرّر أسماء تلك الملفات كوسائط للكتلة.