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

من موسوعة حسوب
< Ruby‏ | Binding
ط نقل محمد-بغات صفحة /Ruby/Binding/eval إلى Ruby/Binding/eval
ط مراجعة وتدقيق.
 
سطر 2: سطر 2:
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby ARGF]]
[[تصنيف: Ruby Binding]]
يقدر التابع <code>eval</code> تعابير لغة روبي الممررة إليه في السياق <code>binding</code>. في حال تمرير الوسيطين الاختياريين <code>filename</code> و <code>lineno</code>، فسيُستخدمان عند الإبلاغ عن وجود أخطاء في الصياغة (syntax errors).
يقدِّر التابع <code>eval</code> تعابير لغة روبي الممررة إليه في السياق [[Ruby/Binding|<code>Binding</code>]]. في حال تمرير الوسيطين الاختياريين <code>filename</code> و <code>lineno</code>، فسيُستخدمان عند الإبلاغ عن وجود أخطاء في الصياغة (syntax errors).
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby"> eval(string [, filename [,lineno]]) → obj
<syntaxhighlight lang="ruby">eval(string [, filename [,lineno]]) → obj
  </syntaxhighlight>
  </syntaxhighlight>
==المعاملات==
==المعاملات==


=== <code>string</code> ===
=== <code>string</code> ===
سلسلة نصية تحوي تعابير روبي المراد تقديرها في السياق <code>binding</code>
سلسلة نصية تحوي تعابير روبي المراد تقديرها في السياق [[Ruby/Binding|<code>Binding</code>]].


=== <code>filename</code> ===
=== <code>filename</code> ===
سطر 21: سطر 21:
==أمثلة==
==أمثلة==
بعض الأمثلة على استخدام التابع <code>eval</code>:
بعض الأمثلة على استخدام التابع <code>eval</code>:
<syntaxhighlight lang="ruby"> def get_binding(param)
<syntaxhighlight lang="ruby">def get_binding(param)
  binding
  binding
end
end
سطر 29: سطر 29:
  </syntaxhighlight>
  </syntaxhighlight>
==انظر أيضًا==
==انظر أيضًا==
* التابع [[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).
==مصادر==
==مصادر==
* [http://ruby-doc.org/core-2.5.1/Binding.html#method-i-eval قسم التابع eval في الصنف binding في توثيق روبي الرسمي.]
* [http://ruby-doc.org/core-2.5.1/Binding.html#method-i-eval قسم التابع eval في الصنف binding في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 08:28، 4 أكتوبر 2018

يقدِّر التابع eval تعابير لغة روبي الممررة إليه في السياق Binding. في حال تمرير الوسيطين الاختياريين filename و lineno، فسيُستخدمان عند الإبلاغ عن وجود أخطاء في الصياغة (syntax errors).

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

eval(string [, filename [,lineno]])  obj

المعاملات

string

سلسلة نصية تحوي تعابير روبي المراد تقديرها في السياق Binding.

filename

سلسلة نصية تمثل اسم الملف. إن أعطي هذا المعامل الاختياري، فسيُستعمَل عند الإبلاغ عن وجود أخطاء في الصياغة.

lineno

سلسلة نصية تمثل رقم السطر. إن أعطي هذا المعامل الاختياري، فسيُستعمَل عند الإبلاغ عن وجود أخطاء في الصياغة.

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

يعاد كائن.

أمثلة

بعض الأمثلة على استخدام التابع eval:

def get_binding(param)
 binding
end
b = get_binding("hello")
b.eval("param")   #=> "hello"

انظر أيضًا

  • التابع local_variables: يعيد أسماء المتغيرات المحلية المعرفة في Binding على شكل رموز (symbols).

مصادر