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