الفرق بين المراجعتين لصفحة: «Ruby/Dir/children»

من موسوعة حسوب
< Ruby‏ | Dir
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:  التابع <code>children</code> الخاص بالصنف <code>Dir</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف:...'
 
لا ملخص تعديل
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Dir]]
[[تصنيف: Ruby Dir]]
يستبدل التابع <code>chdir‎</code> مجلد العمل (working directory) الحالي للعملية ويعيّن مكانه السلسلة النصية المعطاة. عند استدعائه بدون تمرير وسيط، فسيغير مجلدَ العمل إلى قيمة متغير البيئة <code>HOME</code> أو <code>LOGDIR.SystemCallError</code> (وربما <code>Errno::ENOENT</code>) إذا كان المجلد المُستهدف غير موجود.  
يعيد التابع <code>children‎</code> مصفوفة تحتوي جميع أسماء الملفات في المجلد المحدد باستثناء "<code>.</code>" و "<code>..</code>". في حالة عدم وجود المجلد المحدد، فسيُطلق الخطأ <code>SystemCallError</code>.  


في حال إعطاء كتلة برمجية، فسيُمرّر اسم المجلد الحالي الجديد، وستنفّذ الكتلة على اعتباره المجلد الحالي. سيُستعاد مجلد العمل الأصلي عند الخروج من الكتلة. وتكون القيمة المعادة للتابع <code>chdir</code> مساوية لقيمة الكتلة.
يمكن تمرير وسيط اختياري ''<code>encoding</code>، والذي يحدد'' ترميز المجلد. أما إن لم يُحدّد، فسيٌستخدم ترميز نظام الملفات.  
 
يمكن أن تتشعّب كتل <code>chdir</code>، ولكن في البرامج المتفرّعة (Multi-threaded) سيُطلق خطأ إذا حاول أحد المهام الفرعية (thread)  فتح كتلة <code>chdir</code> بينما نقوم مهمة فرعية أخرى بفتح آخر.


== البنية العامة ==
== البنية العامة ==
<syntaxhighlight lang="ruby">
<syntaxhighlight lang="ruby">
chdir( [ string] ) → 0
children( dirname ) → array
chdir( [ string] ) {| path | block } anObject
children( dirname, encoding: enc ) → array
</syntaxhighlight>
</syntaxhighlight>


== المعاملات ==
== المعاملات ==


=== <code>string</code> ===
=== <code>dirname </code> ===
يحتوي هذا المعامل عنوان مجلد العمل الجديد.
اسم المجلد المُحدد.
 
=== <code>encoding</code> ===
يحدد  ترميز المجلد. وإن لم يُحدّد، فسيٌستخدم ترميز نظام الملفات.


== القيمة المٌعادة ==
== القيمة المٌعادة ==
في حال تمرير كتلة فالقيمة المعادة للتابع <code>chdir</code> ستساوي قيمة تلك الكتلة.
مصفوفة تحتوي جميع أسماء الملفات في المجلد المحدد باستثناء "<code>.</code>" و "<code>..</code>".


== أمثلة ==
== أمثلة ==
أمثلة عن استخدام التابع <code>chdir‎</code>:<syntaxhighlight lang="ruby">
أمثلة عن استخدام التابع <code>children‎</code>:<syntaxhighlight lang="ruby">
Dir.chdir("/var/spool/mail")
Dir.children("testdir")   #=> ["config.h", "main.rb"]
puts Dir.pwd
 
Dir.chdir("/tmp") do
  puts Dir.pwd
  Dir.chdir("/usr") do
    puts Dir.pwd
  end
  puts Dir.pwd
end
puts Dir.pwd
</syntaxhighlight>
</syntaxhighlight>


== أنظر أيضًا ==
== أنظر أيضًا ==
* صفحة الصنف <code>[[Ruby/Dir|Dir]]</code>.
* صفحة الصنف <code>[[Ruby/Dir|Dir]]</code>.
* التابع <code>[[Ruby/Dir/5B-5D|Dir[]]]‎</code> : يكافئ التابع <code>Dir[]‎</code> استدعاء <code>Dir.glob([string,...], 0)</code>‎. 
 
* التابع <code>[[Ruby/Dir/chdir|chdir]]‎</code> : يستبدل التابع <code>chdir‎</code> مجلد العمل (working directory) الحالي للعملية ويعيّن مكانه السلسلة النصية المعطاة.


== مصادر ==
== مصادر ==
* [http://ruby-doc.org/core-2.5.1/Dir.html#method-c-chdir قسم  التابع chdir في الصنف Dir في توثيق روبي الرسمي.]
* [http://ruby-doc.org/core-2.5.1/Dir.html#method-c-children قسم  التابع children في الصنف Dir في توثيق روبي الرسمي.]

مراجعة 17:22، 22 سبتمبر 2018

يعيد التابع children‎ مصفوفة تحتوي جميع أسماء الملفات في المجلد المحدد باستثناء "." و "..". في حالة عدم وجود المجلد المحدد، فسيُطلق الخطأ SystemCallError.

يمكن تمرير وسيط اختياري encoding، والذي يحدد ترميز المجلد. أما إن لم يُحدّد، فسيٌستخدم ترميز نظام الملفات.

البنية العامة

children( dirname )  array 
children( dirname, encoding: enc )  array

المعاملات

dirname 

اسم المجلد المُحدد.

encoding

يحدد ترميز المجلد. وإن لم يُحدّد، فسيٌستخدم ترميز نظام الملفات.

القيمة المٌعادة

مصفوفة تحتوي جميع أسماء الملفات في المجلد المحدد باستثناء "." و "..".

أمثلة

أمثلة عن استخدام التابع children‎:

Dir.children("testdir")   #=> ["config.h", "main.rb"]

أنظر أيضًا

  • صفحة الصنف Dir.
  • التابع chdir : يستبدل التابع chdir‎ مجلد العمل (working directory) الحالي للعملية ويعيّن مكانه السلسلة النصية المعطاة.

مصادر