الفرق بين المراجعتين لصفحة: «Ruby/Binding/local variable set»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: <code>التابعBinding.local_variable_set</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تص...' |
جميل-بيلوني (نقاش | مساهمات) ط مراجعة وتدقيق. |
||
(مراجعتان متوسطتان بواسطة مستخدم واحد آخر غير معروضتين) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: <code> | <noinclude>{{DISPLAYTITLE: التابع <code>Binding.local_variable_set</code> في روبي}}</noinclude> | ||
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby | [[تصنيف: Ruby Binding]] | ||
يضبط التابع <code>local_variable_set</code> قيمة المتغير المحلي الممرر إليه إلى قيمة معينة. | يضبط التابع <code>local_variable_set</code> قيمة المتغير المحلي الممرر إليه إلى قيمة معينة. | ||
سلوك هذا التابع مشابه للشيفرة التالية في حال كان بالإمكان إهمال الكائن <code>obj</code> من شيفرة روبي: | سلوك هذا التابع مشابه للشيفرة التالية في حال كان بالإمكان إهمال الكائن <code>obj</code> من شيفرة روبي:<syntaxhighlight lang="ruby">binding. eval("#{symbol} = #{obj}") | ||
< | </syntaxhighlight> | ||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby"> local_variable_set(symbol, obj) → obj | <syntaxhighlight lang="ruby"> local_variable_set(symbol, obj) → obj | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==المعاملات== | ==المعاملات== | ||
<code>symbol</code> | |||
=== <code>symbol</code> === | |||
المتغير المحلي المراد ضبط قيمته إلى قيمة المعامل <code>obj</code>. إن كان المتغير المحلي المعطى موجودًا، فستُستبدَل قيمته. أما إن لم يكن موجودًا، فسينشأ وتضبط قيمته أيضًا إلى قيمة المعامل <code>obj</code>. | المتغير المحلي المراد ضبط قيمته إلى قيمة المعامل <code>obj</code>. إن كان المتغير المحلي المعطى موجودًا، فستُستبدَل قيمته. أما إن لم يكن موجودًا، فسينشأ وتضبط قيمته أيضًا إلى قيمة المعامل <code>obj</code>. | ||
<code>obj</code> | |||
=== <code>obj</code> === | |||
الكائن الذي ستسند قيمته إلى قيمة المتغير المحلي المحدد في المعامل <code>symbol</code>. | الكائن الذي ستسند قيمته إلى قيمة المتغير المحلي المحدد في المعامل <code>symbol</code>. | ||
==القيم المعادة== | ==القيم المعادة== | ||
سطر 18: | سطر 21: | ||
==أمثلة== | ==أمثلة== | ||
مثال لاستخدام التابع <code>local_variable_set</code> : | مثال لاستخدام التابع <code>local_variable_set</code> : | ||
<syntaxhighlight lang="ruby"> def foo | <syntaxhighlight lang="ruby">def foo | ||
a = 1 | a = 1 | ||
bind = binding | bind = binding | ||
سطر 32: | سطر 35: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
* التابع [[Ruby/Binding/eval | <code>eval</code>]]: يقدر تعابير لغة روبي الممررة إليه في السياق <code> | * التابع<nowiki/>[[Ruby/Binding/eval | <code>eval</code>]]: يقدر تعابير لغة روبي الممررة إليه في السياق [[Ruby/Binding|<code>Binding</code>]]. | ||
* التابع [[Ruby/Binding/local_variables | <code>local_variables</code>]]: يعيد أسماء المتغيرات المحلية المعرفة في <code>Binding</code> على شكل رموز ( | * التابع<nowiki/>[[Ruby/Binding/local_variables | <code>local_variables</code>]]: يعيد أسماء المتغيرات المحلية المعرفة في <code>[[Ruby/Binding|Binding]]</code> على شكل رموز (symbols). | ||
* التابع[[Ruby/Binding/local_variable_get | <code>local_variable_get</code>]] : يعيد قيمة المتغير المحلي الممرَّر إليه. | * التابع [[Ruby/Binding/local_variable_get |<code>local_variable_get</code>]] : يعيد قيمة المتغير المحلي الممرَّر إليه. | ||
* التابع[[Ruby/Binding/local_variable_defined-3F | <code>local_variable_defined?</code>]] | * التابع<nowiki/>[[Ruby/Binding/local_variable_defined-3F |<code>local_variable_defined?</code>]] : يتحقق إن كان المتغير <code>symbol</code> المحلي موجودًا أم لا. | ||
==مصادر== | ==مصادر== | ||
* قسم التابع local_variable_set في الصنف Binding في توثيق روبي الرسمي. | * [http://ruby-doc.org/core-2.5.1/Binding.html#method-i-local_variable_set قسم التابع local_variable_set في الصنف Binding في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 08:29، 4 أكتوبر 2018
يضبط التابع local_variable_set
قيمة المتغير المحلي الممرر إليه إلى قيمة معينة.
سلوك هذا التابع مشابه للشيفرة التالية في حال كان بالإمكان إهمال الكائن obj
من شيفرة روبي:
binding. eval("#{symbol} = #{obj}")
البنية العامة
local_variable_set(symbol, obj) → obj
المعاملات
symbol
المتغير المحلي المراد ضبط قيمته إلى قيمة المعامل obj
. إن كان المتغير المحلي المعطى موجودًا، فستُستبدَل قيمته. أما إن لم يكن موجودًا، فسينشأ وتضبط قيمته أيضًا إلى قيمة المعامل obj
.
obj
الكائن الذي ستسند قيمته إلى قيمة المتغير المحلي المحدد في المعامل symbol
.
القيم المعادة
يعاد الكائن obj
.
أمثلة
مثال لاستخدام التابع local_variable_set
:
def foo
a = 1
bind = binding
bind.local_variable_set(:a, 2) # المحلي الموجود مسبقًا `a' ضبط قيمة المتغير
bind.local_variable_set(:b, 3) # المحلي الجديد `b' إنشاء المتغير
# فقط Binding في الصنف `b' يوجد المتغير
p bind.local_variable_get(:a) #=> 2
p bind.local_variable_get(:b) #=> 3
p a #=> 2
p b #=> NameError
end
انظر أيضًا
- التابع
eval
: يقدر تعابير لغة روبي الممررة إليه في السياقBinding
. - التابع
local_variables
: يعيد أسماء المتغيرات المحلية المعرفة فيBinding
على شكل رموز (symbols). - التابع
local_variable_get
: يعيد قيمة المتغير المحلي الممرَّر إليه. - التابع
local_variable_defined?
: يتحقق إن كان المتغيرsymbol
المحلي موجودًا أم لا.