التابع Dir.foreach في روبي

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

مصادر