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

من موسوعة حسوب
لا ملخص تعديل
ط مراجعة وتدقيق
 
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: صفحة الصنف <code>ENV</code> في روبي}}</noinclude>
<noinclude>{{DISPLAYTITLE:الصنف <code>ENV</code> في روبي}}</noinclude>
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Class]]
[[تصنيف: Ruby ENV]]
[[تصنيف: Ruby ENV]]
يشبه الصنف <code>ENV</code> دوال التجزئة (hash-like accessor) لمتغيرات البيئة.  
يشبه الصنف <code>ENV</code> الجداول <code>[[Ruby/Hash|Hash]]</code> كثيرًا ويُستعمل للوصول إلى متغيرات البيئة.
==توابع الصنف العامة (Public Class Methods)==
==توابع الصنف العامة (Public Class Methods)==
===[[Ruby/ENV/5B-5D|[]]]===
===[[Ruby/ENV/5B-5D|[]]]===
يعيد هذا المعامل قيمة متغير بيئة محدَّد في سلسلة نصية، أو يعيد القيمة <code>nil</code> في حال لم يكن ذلك المتغير موجودًا.
يعيد هذا المعامل قيمة متغير بيئة محدَّد في سلسلة نصية، أو يعيد القيمة <code>nil</code> في حال لم يكن ذلك المتغير موجودًا.
===[[Ruby/ENV/5B-5D-3D|[]]]===
===[[Ruby/ENV/5B-5D-3D|[]]]===
يضبط المعامل <code>[]</code> عندما يُستعمَل بالشكل <code>ENV[name] = value‎</code> قيمة متغير البيئة ذي الاسم<code>name</code> إلى القيمة <code>value</code>. إذا كانت القيمة <code>value</code> المعطاة تساوي <code>nil</code>، فسيُحذَف متغير البيئة ذاك.
يضبط هذا المعامل عندما يُستعمَل بالشكل <code>ENV[name] = value‎</code> قيمة متغير البيئة ذي الاسم<code>name</code> إلى القيمة <code>value</code>. إذا كانت القيمة <code>value</code> المعطاة تساوي <code>nil</code>، فسيُحذَف متغير البيئة ذاك.
===[[Ruby/ENV/assoc|<code>assoc</code>]]===
===[[Ruby/ENV/assoc|<code>assoc</code>]]===
يعيد مصفوفةً تحوي اسم وقيمة متغير بيئة ذي اسم محدَّد، أو يعيد القيمة <code>nil</code> في حال لم يكن ذلك المتغير موجودًا.
يعيد مصفوفةً تحوي اسم وقيمة متغير بيئة ذي اسم محدَّد، أو يعيد القيمة <code>nil</code> في حال لم يكن ذلك المتغير موجودًا.
سطر 14: سطر 15:
===[[Ruby/ENV/delete|<code>delete</code>]]===
===[[Ruby/ENV/delete|<code>delete</code>]]===
يحذف متغير بيئةٍ محدَّدٍ ثمَّ يعيد قيمة هذا المتغير. في حال تمرير كتلة إلى التابع، ستُستدعَى إن لم يكن ذلك المتغير موجودًا.
يحذف متغير بيئةٍ محدَّدٍ ثمَّ يعيد قيمة هذا المتغير. في حال تمرير كتلة إلى التابع، ستُستدعَى إن لم يكن ذلك المتغير موجودًا.
===[[Ruby/ENV/delete if|التابع delete_if]]===
===[[Ruby/ENV/delete if|<code>delete_if</code>]]===
يحذف التابع <code>delete_if</code> كل متغيرات البيئة التي تعيد عند تمريرها إلى الكتلة البرمجية المعطاة القيمة <code>true</code>. 
يحذف كل متغيرات البيئة التي تحقِّق شرطًا معيَّنًا.
===[[Ruby/ENV/each|التابع each]]===
===[[Ruby/ENV/each|<code>each</code>]]===
يعيد التابع <code>each‎</code> اسم وقيمة كل متغير من متغيرات البيئة بالتتابع، ثم يرسلها إلى الكتلة البرمجية المعطاة، في حال عدم تمرير كتلة برمجية فسيُعاد كائن من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>. 
يجلب أسماء وقيم متغيرات البيئة بالتتابع، ويرسلها فُرادى إلى الكتلة البرمجية المعطاة.
===[[Ruby/ENV/each key|التابع each_key]]===
===[[Ruby/ENV/each key|<code>each_key</code>]]===
يعيد التابع <code>each_key‎</code> أسماء متغيرات البيئة بالتتابع، ثم يرسلها إلى الكتلة البرمجية المعطاة، في حال عدم تمرير كتلة برمجية فسيُعاد كائن من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>. 
يجلب أسماء متغيرات البيئة بالتتابع، ويرسلها فُرادَى إلى الكتلة البرمجية المعطاة.
===[[Ruby/ENV/each pair|التابع each_pair]]===
===[[Ruby/ENV/each pair|<code>each_pair</code>]]===
يعيد التابع <code>each_pair‎</code> أسماء وقيم متغيرات البيئة بالتتابع، ويرسلها إلى الكتلة البرمجية المعطاة، في حال عدم تمرير كتلة برمجية فسيُعاد كائن من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>. 
يجلب الزوج اسم/قيمة لكل متغير من متغيرات البيئة بالتتابع، ويرسله إلى الكتلة البرمجية المعطاة.
===[[Ruby/ENV/each value|التابع each_value]]===
===[[Ruby/ENV/each value|<code>each_value</code>]]===
يعيد التابع <code>each_value‎</code> قيم متغيرات البيئة بالتتابع، ويرسلها إلى الكتلة البرمجية المعطاة، في حال عدم تمرير كتلة برمجية فسيُعاد كائن من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>. 
يجلب قيمة كل متغير من متغيرات البيئة بالتتابع، ويرسلها إلى الكتلة البرمجية المعطاة.
===[[Ruby/ENV/has key|التابع ?has_key]]===
===<code>[[Ruby/ENV/empty|empty?‎]]</code>===
يعيد التابع <code>has_key?‎‎</code> القيمة <code>true</code> إن كان هناك متغير بيئة بالاسم المٌمرّر في الوسيط <code>name</code>. وإلا فسيعيد <code>false.</code> 
يتحقَّق من عدم وجود أي متغيرات بيئة.
===<code>[[Ruby/ENV/fetch|fetch‎]]</code>===
يجلب قيمة متغير بيئة ذي اسمٍ محدَّدٍ.
===[[Ruby/ENV/has key|<code>?has_key</code>]]===
يتحقَّق إن كان هناك متغير بيئة باسم محدَّد.
===[[Ruby/ENV/has value|<code>?has_value</code>]]===
يتحقَّق إن كان هناك متغير بيئة يملك قيمة محدَّدة.
===[[Ruby/ENV/include|<code>?include</code>]]===
يتحقَّق إن كان هناك متغير بيئة ذي اسم محدَّد.
===[[Ruby/ENV/index|<code>index</code>]]===
أصبح مهملًا (Deprecated). استخدم بدلًا منه التابع <code>[[Ruby/ENV/key|key]]</code>.
===[[Ruby/ENV/inspect|<code>inspect</code>]]===
يعيد محتوى البيئة (environment) في سلسلة نصية.
===[[Ruby/ENV/invert|<code>invert</code>]]===
يعكس بين أسماء وقيم متغيرات البيئة ثمَّ يعيدها في كائنٍ جديدٍ من النوع <code>[[Ruby/Hash|Hash]]</code>.
===[[Ruby/ENV/keep if|<code>keep_if</code>]]===
يُبقِي كل متغيرات البيئة التي تحقِّق شرطًا معيَّنًا ويحذف البقية.
===[[Ruby/ENV/key|<code>key</code>]]===
يعيد اسم متغير البيئة الذي يملك قيمة محدَّدة.
===[[Ruby/ENV/key-3F|<code>?key</code>]]===
يتحقَّق إن كان هنالك متغير بيئة باسم محدَّد.
===[[Ruby/ENV/keys|<code>keys</code>]]===
يعيد جميع متغيرات البيئة في مصفوفة.
===[[Ruby/ENV/length|<code>length</code>]]===
يعيد عدد متغيرات البيئة الموجودة.
===[[Ruby/ENV/member|<code>?member</code>]]===
يتحقَّق إن كان هناك متغير بيئة ذي اسم محدَّد.
===[[Ruby/ENV/rassoc|<code>rassoc</code>]]===
يعيد مصفوفة تضم اسم وقيمة متغير بيئة ذي قيمة محدَّدة، أو يعيد القيمة <code>nil</code> في حال لم تكن تلك القيمة موجودة.
===[[Ruby/ENV/rehash|<code>rehash</code>]]===
لا يفعل هذا التابع أي شيء، فهو موجود لأغراض التوافقية مع الصنف <code>[[Ruby/Hash|Hash]]</code>.


===[[Ruby/ENV/has value|التابع ?has_value]]===
===[[Ruby/ENV/reject|<code>reject</code>]]===
يعيد التابع <code>has_value?‎‎</code> القيمة <code>true</code> إن كان هناك متغير بيئة له القيمة المٌمرّرة في الوسيط <code>value</code>. وإلا فسيعيد <code>false.</code>
مشابه للتابع <code>[[Ruby/ENV/delete if|delete_if]]</code> لكنه يعمل على نسخة من البيئة وليس البيئة نفسها.
===[[Ruby/ENV/include|التابع ?include]]===
===[[Ruby/ENV/reject-21|<code>reject!‎</code>]]===
يعيد التابع <code>include?‎‎</code> القيمة <code>true</code> إن كان هناك متغير بيئة بالاسم المٌمرّر في الوسيط <code>name</code>. وإلا فسيعيد <code>false.</code>
مشابه للتابع <code>[[Ruby/ENV/delete if|delete_if]]</code> لكنه يعيد القيمة <code>nil</code> إن لم يحدث أي تغيير في البيئة.
===[[Ruby/ENV/index|التابع index]]===
===[[Ruby/ENV/replace|<code>replace</code>]]===
التابع <code>index‎</code> صار مُتجاوزًا (Deprecated)، استخدم بدلًا منه التابع <code>[[Ruby/ENV/key|key]]</code>. 
يُبدِّل محتويات الجدول <code>[[Ruby/Hash|hash]]</code> المعطى مكان محتويات متغيرات البيئة الحالية.
===[[Ruby/ENV/inspect|التابع inspect]]===
===[[Ruby/ENV/select|<code>select</code>]]===
يعيد التابع <code>inspect‎</code> محتوى البيئة (environment) على شكل سلسلة نصية. 
يعيد نسخة من البيئة (environment) تضم المدخلات التي حقَّقت شرطًا معيَّنًا.
===[[Ruby/ENV/invert|التابع invert]]===
===[[Ruby/ENV/select-21|<code>select!‎</code>]]===
يعيد التابع <code>invert‎</code> تجزئة (hash) جديدة باستخدام أسماء متغيرات البيئة كقيم وقيمها كأسماء (أي يعكسها). 
مكافئ للتابع <code>[[Ruby/ENV/keep if|keep_if]]</code> لكنه يعيد القيمة <code>nil</code> إن لم يُحدِث أي تغيير في البيئة.
===[[Ruby/ENV/keep if|التابع keep_if]]===
===[[Ruby/ENV/shift|<code>shift</code>]]===
يحذف التابع <code>keep_if</code> كل متغيرات البيئة التي تعيد عند تمريرها إلى الكتلة البرمجية المعطاة القيمة <code>false</code>. 
يحذف متغير بيئة (اسم المتغير وقيمته) من البيئة <code>ENV</code> ثمَّ يعيده في مصفوفة.
===[[Ruby/ENV/key|التابع key]]===
===[[Ruby/ENV/size|<code>size</code>]]===
يعيد التابع <code>key</code> اسم متغير البيئة ذا القيمة <code>value</code>. في حال لم تكن القيمة موجودة فسيعيد <code>nil.</code>
يعيد عدد متغيرات البيئة.
===[[Ruby/ENV/key-3F|التابع <code>?key</code>]]===
===[[Ruby/ENV/store|<code>store</code>]]===
يعيد التابع <code>?key</code> القيمة <code>true</code> إن كان هناك متغير بيئة بالاسم <code>name</code>.
يضبط قيمة متغير بيئة ذي اسمٍ محدَّدٍ إلى قيمة معيَّنة.
===[[Ruby/ENV/keys|التابع keys]]===
===[[Ruby/ENV/to a|<code>to_a</code>]]===
يعيد التابع <code>keys</code> جميع متغيرات البيئة في مصفوفة.
يحول متغيرات البيئة إلى مصفوفة مكونة من مصفوفات فرعية تضم أسماء وقيم تلك المتغيرات.
===[[Ruby/ENV/length|التابع length]]===
===[[Ruby/ENV/to h|<code>to_h</code>]]===
يعيد التابع <code>length</code> عدد متغيرات البيئة.
ينشئ جدولًا من النوع <code>[[Ruby/Hash|Hash]]</code> يحوي نسخةً من متغيرات البيئة.
===[[Ruby/ENV/member|التابع ?member]]===
===[[Ruby/ENV/to hash|<code>to_hash</code>]]===
يعيد التابع <code>?member</code> القيمة <code>true</code> إن كان هناك متغير بيئة بالاسم <code>name</code>(انظر فقرة البنية العامة).
ينشئ جدولًا من النوع <code>[[Ruby/Hash|Hash]]</code> يحوي نسخةً من متغيرات البيئة.
===[[Ruby/ENV/rassoc|التابع rassoc]]===
===[[Ruby/ENV/to s|<code>to_s</code>]]===
يعيد التابع <code>rassoc‎</code> مصفوفة تضم اسم وقيمة متغير البيئة ذا القيمة <code>value</code> (انظر فقرة البنية العامة)، أو يعيد <code>nil</code> في حال لم تكن تلك القيمة موجودة. 
يعيد السلسلة النصية “<code>ENV</code>”. 
===[[Ruby/ENV/rehash|التابع rehash]]===
===[[Ruby/ENV/update|<code>update</code>]]===
التابع <code>rehash‎</code> لا يفعل أي شيء، فهو موجود لأغراض التوافقية مع الصنف <code>[[Ruby/Hash|Hash]]</code>. 
يضيف محتويات الجدول <nowiki/>[[Ruby/Hash|<code>Hash</code>]] المعطى إلى متغيرات البيئة الحالية.
===[[Ruby/ENV/reject|التابع reject]]===
===[[Ruby/ENV/value-3F|<code>?value</code>]]===
التابع <code>reject</code> مشابه للتابع <code>[[Ruby/ENV/delete if|delete_if]]</code>، لكنه يعمل على ويعيد نسخة من البيئة. 
يتحقَّق إن كان هناك متغير له قيمة محدَّدة.
===[[Ruby/ENV/reject-21|التابع  <code>reject!‎</code>]]===
===[[Ruby/ENV/values|<code>values</code>]]===
التابع <code>reject!‎</code> مشابه للتابع <code>[[Ruby/ENV/delete if|delete_if]]</code>، لكنه يعيد القيمة <code>nil</code> إن لم يحدث أي تغيير.
يعيد مصفوفة تضم جميع قيم متغيرات البيئة.
===[[Ruby/ENV/replace|التابع replace]]===
===[[Ruby/ENV/values at|<code>values_at</code>]]===
يستبدل التابع <code>replace</code> محتويات متغيرات البيئة بمحتويات قيمة التجزئة المعطاة <code>hash</code>. 
يعيد مصفوفة تضم جميع قيم متغيرات البيئة المرتبطة بالأسماء المٌعطاة.
===[[Ruby/ENV/select|التابع select]]===
يعيد التابع <code>select‎</code> نسخة من البيئة (environment) تضم المدخلات التي تعيد القيمة <code>true</code> عند تمريرها إلى الكتلة البرمجية. 
===[[Ruby/ENV/select-21|التابع <code>select!‎</code>]]===
التابع <code>select!‎</code> مكافئ للتابع <code>[[Ruby/ENV/keep if|keep_if]]</code>، لكنه يعيد القيمة <code>nil</code> إن لم يحدث أي تغيير. 
===[[Ruby/ENV/shift|التابع shift]]===
يحذف التابع <code>shift</code> متغير بيئة (name-value) من  <code>ENV</code>، ثم يعيده على شكل مصفوفة، في حال كانت البيئة فارغة فسيعيد القيمة <code>nil</code>. 
===[[Ruby/ENV/size|التابع size]]===
يعيد التابع <code>size</code> عدد متغيرات البيئة.
===[[Ruby/ENV/store|التابع store]]===
يضبط التابع<code>store‎</code> القيمة الخاصة بمتغير البيئة المعطى <code>name</code>  ويعطيه القيمة <code>value</code>، إذا كانت قيمة الوسيط <code>value</code> تساوي <code>nil</code> فسيُحذف متغير البيئة ذاك.  
===[[Ruby/ENV/to a|التابع to_a]]===
يحول التابع <code>to_a</code>  متغيرات البيئة إلى مصفوفة مكونة من مصفوفات تضم أسماء وقيم تلك المتغيرات. 
===[[Ruby/ENV/to h|التابع to_h]]===
ينشئ التابع <code>to_h</code> تجزئة (hash) تحتوي نسخة من متغيرات البيئة. 
===[[Ruby/ENV/to hash|التابع to_hash]]===
ينشئ التابع <code>to_hash</code> تجزئة (hash) تحتوي نسخة من متغيرات البيئة. 
===[[Ruby/ENV/to s|التابع to_s]]===
يعيد التابع <code>to_s</code> السلسلة النصية “<code>ENV</code>”. 
===[[Ruby/ENV/update|التابع update]]===
يضيف التابع<code>update</code> محتويات التجزئة المعطاة <code>hash</code> إلى متغيرات البيئة. في حال لم تُعطى أي كتلة برمجية ، فسيكتب فوق المداخل (entries) ذات المفاتيح (keys) المكررة. وإلا يتم تحديد قيمة كل اسم مكرر عن طريق استدعاء الكتلة مع تمرير المفتاح (key) وقيمته من البيئة وقيمته من التجزئة المُعطاة <code>hash</code> إليها.  
===[[Ruby/ENV/value-3F|التابع <code>?value</code>]]===
يعيد التابع <code>?value</code> القيمة <code>true</code> إن كان هناك متغير له القيمة <code>value</code>(انظر فقرة البنية العامة).
===[[Ruby/ENV/values|التابع values]]===
يعيد التابع <code>values‎</code> جميع قيم متغيرات البيئة في مصفوفة. 
===[[Ruby/ENV/values at|التابع values_at]]===
يعيد التابع <code>values_at</code> مصفوفة تضم جميع قيم متغيرات البيئة المرتبطة بالأسماء المٌعطاة.
==مصادر<span> </span>==
==مصادر<span> </span>==
*[http://ruby-doc.org/core-2.5.1/ENV.html قسم  الصنف ENV في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/ENV.html صفحة الصنف ENV في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 14:34، 12 نوفمبر 2018

يشبه الصنف ENV الجداول Hash كثيرًا ويُستعمل للوصول إلى متغيرات البيئة.

توابع الصنف العامة (Public Class Methods)

[]

يعيد هذا المعامل قيمة متغير بيئة محدَّد في سلسلة نصية، أو يعيد القيمة nil في حال لم يكن ذلك المتغير موجودًا.

[]

يضبط هذا المعامل عندما يُستعمَل بالشكل ENV[name] = value‎ قيمة متغير البيئة ذي الاسمname إلى القيمة value. إذا كانت القيمة value المعطاة تساوي nil، فسيُحذَف متغير البيئة ذاك.

assoc

يعيد مصفوفةً تحوي اسم وقيمة متغير بيئة ذي اسم محدَّد، أو يعيد القيمة nil في حال لم يكن ذلك المتغير موجودًا.

clear

يحذف جميع متغيرات البيئة.

delete

يحذف متغير بيئةٍ محدَّدٍ ثمَّ يعيد قيمة هذا المتغير. في حال تمرير كتلة إلى التابع، ستُستدعَى إن لم يكن ذلك المتغير موجودًا.

delete_if

يحذف كل متغيرات البيئة التي تحقِّق شرطًا معيَّنًا.

each

يجلب أسماء وقيم متغيرات البيئة بالتتابع، ويرسلها فُرادى إلى الكتلة البرمجية المعطاة.

each_key

يجلب أسماء متغيرات البيئة بالتتابع، ويرسلها فُرادَى إلى الكتلة البرمجية المعطاة.

each_pair

يجلب الزوج اسم/قيمة لكل متغير من متغيرات البيئة بالتتابع، ويرسله إلى الكتلة البرمجية المعطاة.

each_value

يجلب قيمة كل متغير من متغيرات البيئة بالتتابع، ويرسلها إلى الكتلة البرمجية المعطاة.

empty?‎

يتحقَّق من عدم وجود أي متغيرات بيئة.

fetch‎

يجلب قيمة متغير بيئة ذي اسمٍ محدَّدٍ.

?has_key

يتحقَّق إن كان هناك متغير بيئة باسم محدَّد.

?has_value

يتحقَّق إن كان هناك متغير بيئة يملك قيمة محدَّدة.

?include

يتحقَّق إن كان هناك متغير بيئة ذي اسم محدَّد.

index

أصبح مهملًا (Deprecated). استخدم بدلًا منه التابع key.

inspect

يعيد محتوى البيئة (environment) في سلسلة نصية.

invert

يعكس بين أسماء وقيم متغيرات البيئة ثمَّ يعيدها في كائنٍ جديدٍ من النوع Hash.

keep_if

يُبقِي كل متغيرات البيئة التي تحقِّق شرطًا معيَّنًا ويحذف البقية.

key

يعيد اسم متغير البيئة الذي يملك قيمة محدَّدة.

?key

يتحقَّق إن كان هنالك متغير بيئة باسم محدَّد.

keys

يعيد جميع متغيرات البيئة في مصفوفة.

length

يعيد عدد متغيرات البيئة الموجودة.

?member

يتحقَّق إن كان هناك متغير بيئة ذي اسم محدَّد.

rassoc

يعيد مصفوفة تضم اسم وقيمة متغير بيئة ذي قيمة محدَّدة، أو يعيد القيمة nil في حال لم تكن تلك القيمة موجودة.

rehash

لا يفعل هذا التابع أي شيء، فهو موجود لأغراض التوافقية مع الصنف Hash.

reject

مشابه للتابع delete_if لكنه يعمل على نسخة من البيئة وليس البيئة نفسها.

reject!‎

مشابه للتابع delete_if لكنه يعيد القيمة nil إن لم يحدث أي تغيير في البيئة.

replace

يُبدِّل محتويات الجدول hash المعطى مكان محتويات متغيرات البيئة الحالية.

select

يعيد نسخة من البيئة (environment) تضم المدخلات التي حقَّقت شرطًا معيَّنًا.

select!‎

مكافئ للتابع keep_if لكنه يعيد القيمة nil إن لم يُحدِث أي تغيير في البيئة.

shift

يحذف متغير بيئة (اسم المتغير وقيمته) من البيئة ENV ثمَّ يعيده في مصفوفة.

size

يعيد عدد متغيرات البيئة.

store

يضبط قيمة متغير بيئة ذي اسمٍ محدَّدٍ إلى قيمة معيَّنة.

to_a

يحول متغيرات البيئة إلى مصفوفة مكونة من مصفوفات فرعية تضم أسماء وقيم تلك المتغيرات.

to_h

ينشئ جدولًا من النوع Hash يحوي نسخةً من متغيرات البيئة.

to_hash

ينشئ جدولًا من النوع Hash يحوي نسخةً من متغيرات البيئة.

to_s

يعيد السلسلة النصية “ENV”. 

update

يضيف محتويات الجدول Hash المعطى إلى متغيرات البيئة الحالية.

?value

يتحقَّق إن كان هناك متغير له قيمة محدَّدة.

values

يعيد مصفوفة تضم جميع قيم متغيرات البيئة.

values_at

يعيد مصفوفة تضم جميع قيم متغيرات البيئة المرتبطة بالأسماء المٌعطاة.

مصادر