التابع Enumerator.each_with_object
في روبي
< Ruby | Enumerator
يكرر التابع each_with_object
الكتلة المعطاة على كل عنصر من عناصر الكائن الذي استدعي معه مع كائن آخر اعتباطي (الكائن المُمرَّر إليه).
إن لم تُعطَ أية كتلة، فسيعيد التابع كائنًا جديدًا من النوع Enumerator
.
البنية العامة
each_with_object(obj) {|(*args), obj| ... }
each_with_object(obj)
المعاملات
obj
الكائن الذي سيُكرَّر مع كل عنصر من عناصر الكائن المعطى.
القيمة المعادة
يعاد الكائن obj
المعطى، أو يعاد كائن جديد من النوع Enumerator
إن لم تُعطَ أية كتلة.
أمثلة
مثال على استعمال التابع each_with_object
:
to_three = Enumerator.new do |y|
3.times do |x|
y << x
end
end
to_three_with_string = to_three.with_object("foo")
to_three_with_string.each do |x,string|
puts "#{string}: #{x}"
end
# => foo:0
# => foo:1
# => foo:2
انظر أيضًا
- التابع
each
: يتكرر عبر الكتلة المعطاة وفقًا للكائن المُعدِّد الذي استدعي معه والطريقة التي أُنشِئ بها. - التابع
each_with_index
: يشبه التابعwith_index
باستثناء أنه لا يوجد إزاحة بادئة لبدء العملية عند قيمة محدَّدة.