التابع Enumerator.next_values في روبي
< Ruby | Enumerator
يعيد التابع next_values مصفوفة تحوي الكائن التالي في المُعدِّد الذي استدعي معه، ويحرك موضع المؤشر الداخلي للأمام خطوةً واحدةً. عند وصول المؤشر إلى النهاية، يُطلَق الاستثناء StopIteration.
يمكن استعمال هذا التابع للتمييز بين yield و yield nil.
البنية العامة
next_values → array
القيمة المعادة
تعاد مصفوفة تحوي الكائن التالي في المُعدِّد المعطى.
أمثلة
مثال على استعمال التابع next_values:
o = Object.new
def o.each
yield
yield 1
yield 1, 2
yield nil
yield [1, 2]
end
e = o.to_enum
p e.next_values
p e.next_values
p e.next_values
p e.next_values
p e.next_values
e = o.to_enum
p e.next
p e.next
p e.next
p e.next
p e.next
## yield args next_values next
# yield [] nil
# yield 1 [1] 1
# yield 1, 2 [1, 2] [1, 2]
# yield nil [nil] nil
# yield [1, 2] [[1, 2]] [1, 2]
انتبه إلى أنَّ التابع next_values لا يؤثر على التوابع التعدادية الغير خارجية (non-external enumeration methods) إلا إن كان لتوابع التكرار الأساسية نفسها آثارًا جانبية مثل التابع IO.each_line.
انظر أيضًا
- التابع
feed: يضبط القيمة المراد إعادتها عبر الاستدعاءyieldالتالي داخلe. - التابع
next: يعيد الكائن التالي في المُعدِّد الذي استدعي معه، ويحرك موضع المؤشر الداخلي للأمام خطوة واحدة.