الفرق بين المراجعتين ل"Ruby/Continuation/cont"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:  التابع <code>[]</code> الخاص بالصنف <code>Continuation</code> في روبي}}</noinclude> تصنيف: Ruby تصني...')
 
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Continuation]]
 
[[تصنيف: Ruby Continuation]]
يعيد التابع <code>numerator</code> مقام (numerator) العدد العقدي.  
+
 +
يقوم التابع <code>cont</code> باستدعاء <code>continuation</code>. يستمر البرنامج من نهاية كتلة <code>callcc</code>. 
 +
 
 +
إذا لم يعطى التابع أي وسائط، فإنّ <code>callcc</code> الأصلية ستعيد القيمة <code>nil</code>. إما إذا أُعطي وسيطًا واحدًا، فستعيد <code>callcc</code> ذلك الوسيط. خلاف ذلك ، ستعاد مصفوفة تحتوي على الوسائط الممرّرة.  
  
 
== البنية العامة ==
 
== البنية العامة ==
 
<syntaxhighlight lang="ruby">
 
<syntaxhighlight lang="ruby">
numerator → numeric
+
cont[args, ...]
 
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
== القيمة المٌعادة ==
 
يعيد التابع ‎<code>numerator</code> مقام (numerator) العدد العقدي.
 
  
 
== أمثلة ==
 
== أمثلة ==
أمثلة عن استخدام معامل التابع ‎<code>numerator</code>:<syntaxhighlight lang="ruby">
+
أمثلة عن استخدام معامل التابع ‎<code>cont</code>:<syntaxhighlight lang="ruby">
    1  2      3+4i  <-  numerator
+
callcc {|cont| cont.call }          #=> nil
    - + -i  ->  ----
+
callcc {|cont|  cont.call 1 }        #=> 1
    2  3        6    <-  denominator
+
callcc {|cont|  cont.call 1, 2, 3 }  #=> [1, 2, 3]
 
 
c = Complex('1/2+2/3i') #=> ((1/2)+(2/3)*i)
 
n = c.numerator          #=> (3+4i)
 
d = c.denominator        #=> 6
 
n / d                    #=> ((1/2)+(2/3)*i)
 
Complex(Rational(n.real, d), Rational(n.imag, d))
 
                        #=> ((1/2)+(2/3)*i)
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== أنظر أيضًا ==
 
== أنظر أيضًا ==
* التابع ‎<code>[[Ruby/Complex/denominator|denominator]]</code>: يعيد التابع ‎<code>denominator</code> قاسم (denominator) العدد العقدي، أي المضاعف المشترك الأصغر (lcm) للجزءين الحقيقي والتخيلي.
+
*  صفحة [[Ruby/Continuation|الصنف<code>Continuation</code>]].
  
 
== مصادر ==
 
== مصادر ==
* [http://ruby-doc.org/core-2.5.1/Complex.html#method-i-numerator قسم  التابع numerator في الصنف Continuation في توثيق روبي الرسمي.]
+
* [http://ruby-doc.org/core-2.5.1/Continuation.html#method-i-5B-5D قسم  التابع cont في الصنف Continuation في توثيق روبي الرسمي.]

مراجعة 17:00، 15 سبتمبر 2018


يقوم التابع cont باستدعاء continuation. يستمر البرنامج من نهاية كتلة callcc.

إذا لم يعطى التابع أي وسائط، فإنّ callcc الأصلية ستعيد القيمة nil. إما إذا أُعطي وسيطًا واحدًا، فستعيد callcc ذلك الوسيط. خلاف ذلك ، ستعاد مصفوفة تحتوي على الوسائط الممرّرة.

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

cont[args, ...]

أمثلة

أمثلة عن استخدام معامل التابع ‎cont:

callcc {|cont|  cont.call }           #=> nil
callcc {|cont|  cont.call 1 }         #=> 1
callcc {|cont|  cont.call 1, 2, 3 }   #=> [1, 2, 3]

أنظر أيضًا

مصادر