الفرق بين المراجعتين ل"Ruby/Binding/eval"

من موسوعة حسوب
< Ruby‏ | Binding
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>Binding.eval</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تصنيف: Ruby ARGF...')
 
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby ARGF]]
 
[[تصنيف: Ruby ARGF]]
يقدر التابع <code>eval</code> تعابير لغة روبي الممررة إليه في السياق <code>binding</code>. في حال تمرير الوسيطين الاختياريين <code>filename</code> و <code>lineno</code>، فسيُستخدمان عند الإبلاغ عن وجود أخطاء في الصياغة (<code>syntax</code> <code>errors</code>).
+
يقدر التابع <code>eval</code> تعابير لغة روبي الممررة إليه في السياق <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>binding</code>.
+
=== <code>string</code> ===
<code>filename</code>
+
سلسلة نصية تحوي تعابير روبي المراد تقديرها في السياق <code>binding</code>
 +
 
 +
=== <code>filename</code> ===
 
سلسلة نصية تمثل اسم الملف. إن أعطي هذا المعامل الاختياري، فسيُستعمَل عند الإبلاغ عن وجود أخطاء في الصياغة.
 
سلسلة نصية تمثل اسم الملف. إن أعطي هذا المعامل الاختياري، فسيُستعمَل عند الإبلاغ عن وجود أخطاء في الصياغة.
<code>lineno</code>
+
 
 +
=== <code>lineno</code> ===
 
سلسلة نصية تمثل رقم السطر. إن أعطي هذا المعامل الاختياري، فسيُستعمَل عند الإبلاغ عن وجود أخطاء في الصياغة.
 
سلسلة نصية تمثل رقم السطر. إن أعطي هذا المعامل الاختياري، فسيُستعمَل عند الإبلاغ عن وجود أخطاء في الصياغة.
 
==القيم المعادة==
 
==القيم المعادة==
سطر 26: سطر 29:
 
  </syntaxhighlight>
 
  </syntaxhighlight>
 
==انظر أيضًا==
 
==انظر أيضًا==
* التابع [[Ruby/Binding/local_variables | <code>local_variables</code>]]: يعيد أسماء المتغيرات المحلية المعرفة في <code>Binding</code> على شكل رموز (<code>symbols</code>).
+
* التابع [[Ruby/Binding/local_variables | <code>local_variables</code>]]: يعيد أسماء المتغيرات المحلية المعرفة في <code>Binding</code> على شكل رموز (symbols).
 
==مصادر==
 
==مصادر==
* قسم التابع eval في الصنف binding في توثيق روبي الرسمي.
+
* [http://ruby-doc.org/core-2.5.1/Binding.html#method-i-eval قسم التابع eval في الصنف binding في توثيق روبي الرسمي.]

مراجعة 12:41، 12 سبتمبر 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).

مصادر