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

من موسوعة حسوب
لا ملخص تعديل
ط مراجعة وتدقيق
 
(5 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 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>ENV[]‎</code> القيمة الخاصة بمتغير البيئة المعطى على شكل سلسلة نصية، ويعيد <code>nil</code> في حال لم يكن المتغير المعطى موجودًا. 
يعيد هذا المعامل قيمة متغير بيئة محدَّد في سلسلة نصية، أو يعيد القيمة <code>nil</code> في حال لم يكن ذلك المتغير موجودًا.
===[[Ruby/ENV/5B-5D-3D|التابع  = []]]===
===[[Ruby/ENV/5B-5D-3D|[]]]===
يضبط التعبير <code>ENV[name] = value‎</code> القيمة الخاصة بمتغير البيئة المعطى <code>name</code>  ويعطيه القيمة <code>value</code>، إذا كانت قيمة الوسيط <code>value</code> تساوي<code>nil</code> فسيُحذف متغير البيئة. الوسيط <code>name</code> ينبغي أن يكون سلسلة نصية.
يضبط هذا المعامل عندما يُستعمَل بالشكل <code>ENV[name] = value‎</code> قيمة متغير البيئة ذي الاسم<code>name</code> إلى القيمة <code>value</code>. إذا كانت القيمة <code>value</code> المعطاة تساوي <code>nil</code>، فسيُحذَف متغير البيئة ذاك.
===[[Ruby/ENV/assoc|التابع assoc]]===
===[[Ruby/ENV/assoc|<code>assoc</code>]]===
يعيد التابع <code>assoc‎</code> مصفوفة تضم اسم وقيمة متغير البيئة ذو الإسم <code>name</code>، أو يعيد <code>nil</code> في حال لم يكن ذلك المتغير موجودًا. 
يعيد مصفوفةً تحوي اسم وقيمة متغير بيئة ذي اسم محدَّد، أو يعيد القيمة <code>nil</code> في حال لم يكن ذلك المتغير موجودًا.
===[[Ruby/ENV/clear|التابع clear]]===
===[[Ruby/ENV/clear|<code>clear</code>]]===
يحذف التابع <code>clear‎</code> جميع متغيرات البيئة. 
يحذف جميع متغيرات البيئة.
===[[Ruby/ENV/delete|التابع delete]]===
===[[Ruby/ENV/delete|<code>delete</code>]]===
يحذف التابع <code>delete</code> متغير البيئة ذو الإسم <code>name</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 value|التابع ?has_value]]===
يجلب قيمة متغير بيئة ذي اسمٍ محدَّدٍ.
يعيد التابع <code>has_value?‎‎</code> القيمة <code>true</code> إن كان هناك متغير بيئة له القيمة المٌمرّرة في الوسيط <code>value</code>. وإلا فسيعيد <code>false.</code>
===[[Ruby/ENV/has key|<code>?has_key</code>]]===
===[[Ruby/ENV/include|التابع ?include]]===
يتحقَّق إن كان هناك متغير بيئة باسم محدَّد.
يعيد التابع <code>include?‎‎</code> القيمة <code>true</code> إن كان هناك متغير بيئة بالاسم المٌمرّر في الوسيط <code>name</code>. وإلا فسيعيد <code>false.</code>
===[[Ruby/ENV/has value|<code>?has_value</code>]]===
 
يتحقَّق إن كان هناك متغير بيئة يملك قيمة محدَّدة.
===[[Ruby/ENV/index|التابع index]]===
===[[Ruby/ENV/include|<code>?include</code>]]===
التابع <code>index‎</code> صار مُتجاوزًا (Deprecated)، استخدم بدلًا منه التابع <code>[[Ruby/ENV/key|key]]</code>. 
يتحقَّق إن كان هناك متغير بيئة ذي اسم محدَّد.
 
===[[Ruby/ENV/index|<code>index</code>]]===
===[[Ruby/ENV/inspect|التابع inspect]]===
أصبح مهملًا (Deprecated). استخدم بدلًا منه التابع <code>[[Ruby/ENV/key|key]]</code>.
يعيد التابع <code>inspect‎</code> محتوى البيئة (environment) على شكل سلسلة نصية. 
===[[Ruby/ENV/inspect|<code>inspect</code>]]===
 
يعيد محتوى البيئة (environment) في سلسلة نصية.
===[[Ruby/ENV/invert|التابع invert]]===
===[[Ruby/ENV/invert|<code>invert</code>]]===
يعيد التابع <code>invert‎</code> تجزئة (hash) جديدة باستخدام أسماء متغيرات البيئة كقيم وقيمها كأسماء (أي يعكسها). 
يعكس بين أسماء وقيم متغيرات البيئة ثمَّ يعيدها في كائنٍ جديدٍ من النوع <code>[[Ruby/Hash|Hash]]</code>.
 
===[[Ruby/ENV/keep if|<code>keep_if</code>]]===
===[[Ruby/ENV/keep if|التابع keep_if]]===
يُبقِي كل متغيرات البيئة التي تحقِّق شرطًا معيَّنًا ويحذف البقية.
يحذف التابع <code>keep_if</code> كل متغيرات البيئة التي تعيد عند تمريرها إلى الكتلة البرمجية المعطاة القيمة <code>false</code>. 
===[[Ruby/ENV/key|<code>key</code>]]===
 
يعيد اسم متغير البيئة الذي يملك قيمة محدَّدة.
===[[Ruby/ENV/key|التابع key]]===
===[[Ruby/ENV/key-3F|<code>?key</code>]]===
يعيد التابع <code>key</code> اسم متغير البيئة ذا القيمة <code>value</code>. في حال لم تكن القيمة موجودة فسيعيد <code>nil.</code>
يتحقَّق إن كان هنالك متغير بيئة باسم محدَّد.
 
===[[Ruby/ENV/keys|<code>keys</code>]]===
===[[Ruby/ENV/key-3F|التابع <code>?key</code>]]===
يعيد جميع متغيرات البيئة في مصفوفة.
يعيد التابع <code>?key</code> القيمة <code>true</code> إن كان هناك متغير بيئة بالاسم <code>name</code>.
===[[Ruby/ENV/length|<code>length</code>]]===
 
يعيد عدد متغيرات البيئة الموجودة.
===[[Ruby/ENV/keys|التابع keys]]===
===[[Ruby/ENV/member|<code>?member</code>]]===
يعيد التابع <code>keys</code> جميع متغيرات البيئة في مصفوفة.
يتحقَّق إن كان هناك متغير بيئة ذي اسم محدَّد.
 
===[[Ruby/ENV/rassoc|<code>rassoc</code>]]===
===[[Ruby/ENV/length|التابع length]]===
يعيد مصفوفة تضم اسم وقيمة متغير بيئة ذي قيمة محدَّدة، أو يعيد القيمة <code>nil</code> في حال لم تكن تلك القيمة موجودة.
يعيد التابع <code>length</code> عدد متغيرات البيئة.
===[[Ruby/ENV/rehash|<code>rehash</code>]]===
 
لا يفعل هذا التابع أي شيء، فهو موجود لأغراض التوافقية مع الصنف <code>[[Ruby/Hash|Hash]]</code>.
===[[Ruby/ENV/member|التابع ?member]]===
يعيد التابع <code>?member</code> القيمة <code>true</code> إن كان هناك متغير بيئة بالاسم <code>name</code>(انظر فقرة البنية العامة).
 
===[[Ruby/ENV/rassoc|التابع rassoc]]===
يعيد التابع <code>rassoc‎</code> مصفوفة تضم اسم وقيمة متغير البيئة ذا القيمة <code>value</code> (انظر فقرة البنية العامة)، أو يعيد <code>nil</code> في حال لم تكن تلك القيمة موجودة. 
 
=== [[Ruby/ENV/rehash|التابع rehash]] ===
التابع <code>rehash‎</code> لا يفعل أي شيء، فهو موجود لأغراض التوافقية مع الصنف <code>[[Ruby/Hash|Hash]]</code>. 
 
=== [[Ruby/ENV/reject|التابع reject]] ===
التابع <code>reject</code> مشابه للتابع <code>[[Ruby/ENV/delete if|delete_if]]</code>، لكنه يعمل على ويعيد نسخة من البيئة. 
 
=== [[Ruby/ENV/reject-21|التابع  <code>reject!‎</code>]] ===
التابع <code>reject!‎</code> مشابه للتابع <code>[[Ruby/ENV/delete if|delete_if]]</code>، لكنه يعيد القيمة <code>nil</code> إن لم يحدث أي تغيير.
 
=== [[Ruby/ENV/replace|التابع replace]] ===
يستبدل التابع <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/store|التابع store]] ===
 
=== [[Ruby/ENV/store|التابع store]] ===
 
=== [[Ruby/ENV/store|التابع store]] ===


===[[Ruby/ENV/reject|<code>reject</code>]]===
مشابه للتابع <code>[[Ruby/ENV/delete if|delete_if]]</code> لكنه يعمل على نسخة من البيئة وليس البيئة نفسها.
===[[Ruby/ENV/reject-21|<code>reject!‎</code>]]===
مشابه للتابع <code>[[Ruby/ENV/delete if|delete_if]]</code> لكنه يعيد القيمة <code>nil</code> إن لم يحدث أي تغيير في البيئة.
===[[Ruby/ENV/replace|<code>replace</code>]]===
يُبدِّل محتويات الجدول <code>[[Ruby/Hash|hash]]</code> المعطى مكان محتويات متغيرات البيئة الحالية.
===[[Ruby/ENV/select|<code>select</code>]]===
يعيد نسخة من البيئة (environment) تضم المدخلات التي حقَّقت شرطًا معيَّنًا.
===[[Ruby/ENV/select-21|<code>select!‎</code>]]===
مكافئ للتابع <code>[[Ruby/ENV/keep if|keep_if]]</code> لكنه يعيد القيمة <code>nil</code> إن لم يُحدِث أي تغيير في البيئة.
===[[Ruby/ENV/shift|<code>shift</code>]]===
يحذف متغير بيئة (اسم المتغير وقيمته) من البيئة <code>ENV</code> ثمَّ يعيده في مصفوفة.
===[[Ruby/ENV/size|<code>size</code>]]===
يعيد عدد متغيرات البيئة.
===[[Ruby/ENV/store|<code>store</code>]]===
يضبط قيمة متغير بيئة ذي اسمٍ محدَّدٍ إلى قيمة معيَّنة.
===[[Ruby/ENV/to a|<code>to_a</code>]]===
يحول متغيرات البيئة إلى مصفوفة مكونة من مصفوفات فرعية تضم أسماء وقيم تلك المتغيرات.
===[[Ruby/ENV/to h|<code>to_h</code>]]===
ينشئ جدولًا من النوع <code>[[Ruby/Hash|Hash]]</code> يحوي نسخةً من متغيرات البيئة.
===[[Ruby/ENV/to hash|<code>to_hash</code>]]===
ينشئ جدولًا من النوع <code>[[Ruby/Hash|Hash]]</code> يحوي نسخةً من متغيرات البيئة.
===[[Ruby/ENV/to s|<code>to_s</code>]]===
يعيد السلسلة النصية “<code>ENV</code>”. 
===[[Ruby/ENV/update|<code>update</code>]]===
يضيف محتويات الجدول <nowiki/>[[Ruby/Hash|<code>Hash</code>]] المعطى إلى متغيرات البيئة الحالية.
===[[Ruby/ENV/value-3F|<code>?value</code>]]===
يتحقَّق إن كان هناك متغير له قيمة محدَّدة.
===[[Ruby/ENV/values|<code>values</code>]]===
يعيد مصفوفة تضم جميع قيم متغيرات البيئة.
===[[Ruby/ENV/values at|<code>values_at</code>]]===
يعيد مصفوفة تضم جميع قيم متغيرات البيئة المرتبطة بالأسماء المٌعطاة.
==مصادر<span> </span>==
==مصادر<span> </span>==
*[http://ruby-doc.org/core-2.5.1/ENV.html#method-c-inspect قسم  الصنف 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

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

مصادر