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

من موسوعة حسوب
< Ruby‏ | Kernel
لا ملخص تعديل
طلا ملخص تعديل
 
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Kernel]]
[[تصنيف: Ruby Kernel]]
يضبط (Controls) التابع <code>trace_var</code> تعقّبات (tracing) تعيين المتغيرات الكلية. يحدد الوسيط المعطى <code>symbol</code> المتغير (إما على شكل سلسلة نصية أو معرف رمز [symbol identifier]). يتم تنفيذ التعليمة<code>cmd</code> (الذي قد يكون سلسلة نصية أو كائن <code>Proc</code>) أو كتلة برمجية كلما تم تعيين المتغير. ثم تتلقى الكتلة أو الكائن <code>Proc</code> القيمة الجديدة للمتغير كوسيط. انظر أيضا صفحة التابع <code>[[Ruby/Kernel/untrace var|untrace_var]]</code>.
يضبط (Controls) التابع <code>trace_var</code> تعقّبات (tracing) تعيين المتغيرات العامة.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">trace_var(symbol, cmd ) → nil
<syntaxhighlight lang="ruby">trace_var(symbol, cmd ) → nil
trace_var(symbol) {|val| block } → nil‎</syntaxhighlight>
trace_var(symbol) {|val| block } → nil‎</syntaxhighlight>يحدد الوسيط المعطى <code>symbol</code> المتغير (إمَّا على شكل سلسلة نصية أو معرف رمز [symbol identifier]). يتم تنفيذ الأمر <code>cmd</code> (الذي قد يكون سلسلةً نصيةً أو كائن من النوع <code>Proc</code> أو كتلةً برمجيةً) كلما تم تعيين المتغير ثم تتلقى الكتلة أو الكائن <code>Proc</code> القيمة الجديدة للمتغير كوسيط.
 
==المعاملات==
==المعاملات==
===<code>symbol‎</code>===
===<code>symbol‎</code>===
سطر 14: سطر 15:


التعليمة المراد تنفيذها  كلما تم تعيين المتغير.
التعليمة المراد تنفيذها  كلما تم تعيين المتغير.
==القيمة المُعادة==
==القيمة المعادة==
القيمة <code>nil</code>.
تعاد القيمة <code>nil</code>.


==أمثلة==
==أمثلة==
سطر 21: سطر 22:
<syntaxhighlight lang="ruby">trace_var :$_, proc {|v| puts "$_ is now '#{v}'" }
<syntaxhighlight lang="ruby">trace_var :$_, proc {|v| puts "$_ is now '#{v}'" }
$_ = "hello"
$_ = "hello"
$_ = ' there'‎</syntaxhighlight>الناتج:<syntaxhighlight lang="ruby">$_ is now 'hello'
$_ = ' there'‎</syntaxhighlight>ناتج تنفيذ هذا المثال هو:<syntaxhighlight lang="text">$_ is now 'hello'
$_ is now ' there'‎</syntaxhighlight>
$_ is now ' there'‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضا==
* التابع <code>[[Ruby/Kernel/untrace var|untrace_var]]</code>: يحذف التعقب.
* التابع <code>[[Ruby/Kernel/untrace var|untrace_var]]</code>: يزيل التعقب (tracing) للتعليمة <code>cmd</code> المعطاة على المتغير الكلي المحدد، ثم يعيد <code>nil</code>.


==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Kernel.html#method-i-trace_var قسم التابع trace_var‎ في الصنف Kernel‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/Kernel.html#method-i-trace_var قسم التابع trace_var‎ في الصنف Kernel‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 06:48، 17 نوفمبر 2018

يضبط (Controls) التابع trace_var تعقّبات (tracing) تعيين المتغيرات العامة.

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

trace_var(symbol, cmd )  nil
trace_var(symbol) {|val| block }  nil

يحدد الوسيط المعطى symbol المتغير (إمَّا على شكل سلسلة نصية أو معرف رمز [symbol identifier]). يتم تنفيذ الأمر cmd (الذي قد يكون سلسلةً نصيةً أو كائن من النوع Proc أو كتلةً برمجيةً) كلما تم تعيين المتغير ثم تتلقى الكتلة أو الكائن Proc القيمة الجديدة للمتغير كوسيط.

المعاملات

symbol‎

يحدد المتغير.

cmd‎

التعليمة المراد تنفيذها كلما تم تعيين المتغير.

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

تعاد القيمة nil.

أمثلة

مثال على استخدام التابع trace_var‎:

trace_var :$_, proc {|v| puts "$_ is now '#{v}'" }
$_ = "hello"
$_ = ' there'

ناتج تنفيذ هذا المثال هو:

$_ is now 'hello'
$_ is now ' there'‎

انظر أيضا

  • التابع untrace_var: يزيل التعقب (tracing) للتعليمة cmd المعطاة على المتغير الكلي المحدد، ثم يعيد nil.

مصادر