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

من موسوعة حسوب
< Ruby‏ | Binding
لا ملخص تعديل
ط مراجعة وتدقيق.
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: <code>التابعBinding.local_variable_set</code> في روبي}}</noinclude>
<noinclude>{{DISPLAYTITLE: التابع <code>Binding.local_variable_set</code> في روبي}}</noinclude>
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby ARGF]]
[[تصنيف: Ruby Binding]]
يضبط التابع <code>local_variable_set</code>‎ قيمة المتغير المحلي الممرر إليه إلى قيمة معينة.
يضبط التابع <code>local_variable_set</code>‎ قيمة المتغير المحلي الممرر إليه إلى قيمة معينة.
سلوك هذا التابع مشابه للشيفرة التالية في حال كان بالإمكان إهمال الكائن <code>obj</code> من شيفرة روبي:<syntaxhighlight lang="ruby">
سلوك هذا التابع مشابه للشيفرة التالية في حال كان بالإمكان إهمال الكائن <code>obj</code> من شيفرة روبي:<syntaxhighlight lang="ruby">binding. eval("#{symbol} = #{obj}")
binding. eval("#{symbol} = #{obj}")
</syntaxhighlight>
</syntaxhighlight>


سطر 14: سطر 13:


=== <code>symbol</code> ===
=== <code>symbol</code> ===
المتغير المحلي المراد ضبط قيمته إلى قيمة المعامل <code>obj</code>. إن كان المتغير المحلي المعطى موجودًا، فستُستبدَل قيمته. أما إن لم يكن موجودًا، فسينشأ وتضبط قيمته أيضًا إلى قيمة المعامل <code>obj</code>
المتغير المحلي المراد ضبط قيمته إلى قيمة المعامل <code>obj</code>. إن كان المتغير المحلي المعطى موجودًا، فستُستبدَل قيمته. أما إن لم يكن موجودًا، فسينشأ وتضبط قيمته أيضًا إلى قيمة المعامل <code>obj</code>.


=== <code>obj</code> ===
=== <code>obj</code> ===
سطر 22: سطر 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
سطر 36: سطر 35:
  </syntaxhighlight>
  </syntaxhighlight>
==انظر أيضًا==
==انظر أيضًا==
* التابع [[Ruby/Binding/eval | <code>eval</code>]]: يقدر تعابير لغة روبي الممررة إليه في السياق <code>binding</code>.
* التابع<nowiki/>[[Ruby/Binding/eval | <code>eval</code>]]: يقدر تعابير لغة روبي الممررة إليه في السياق [[Ruby/Binding|<code>Binding</code>]].
* التابع [[Ruby/Binding/local_variables | <code>local_variables</code>]]: يعيد أسماء المتغيرات المحلية المعرفة في <code>Binding</code> على شكل رموز (symbols).
* التابع<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>]] ‎: يتحقق‎ إن كان المتغير <code>symbol</code> المحلي موجودًا أم لا.
* التابع<nowiki/>[[Ruby/Binding/local_variable_defined-3F |<code>local_variable_defined?</code>]] ‎: يتحقق‎ إن كان المتغير <code>symbol</code> المحلي موجودًا أم لا.
==مصادر==
==مصادر==
* [http://ruby-doc.org/core-2.5.1/Binding.html#method-i-local_variable_set قسم التابع 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 المحلي موجودًا أم لا.

مصادر