التابع Enumerator::Lazy.flat_map
في روبي
< Ruby | Enumerator::Lazy
يعيد التابع flat_map
كائن تعداد جديد من النوع Lazy
مع النتائج المتسلسلة الناتجة عن تنفيذ الكتلة المعطاة مرةً واحدةً لكل عنصر من عناصر الكائن Lazy
الذي استدعي معه.
["foo", "bar"].lazy.flat_map {|i| i.each_char.lazy}.force
#=> ["f", "o", "o", "b", "a", "r"]
تُحلَّل (decompose) القيمة x المعادة من الكتلة إن تحقق أحد الشرطين التاليين:
- x تستجيب للتابعين
each
وforce
كلاهما، وهذا يعني أن x هي مُعدِّد كسول (lazy enumerator). - x هي مصفوفة أو تستجيب للتابع
to_ary
.
خلا ذلك، ستُحتَوى x كما هي في القيمة المعادة.
[{a:1}, {b:2}].lazy.flat_map {|i| i}.force
#=> [{:a=>1}, {:b=>2}]
البنية العامة
flat_map { |obj| block } → a_lazy_enumerator
القيمة المعادة
يعاد كائن تعداد جديد من النوع Lazy
مع النتائج المتسلسلة الناتجة عن تنفيذ الكتلة المعطاة مرةً واحدةً لكل عنصر من عناصر الكائن Lazy
المعطى.
انظر أيضًا
- التابع
new
: ينشئ كائن تعداد جديد من النوعEnumerator::Lazy
. - التابع
collect_concat
: يعيد كائن تعداد جديد من النوعLazy
مع النتائج المتسلسلة الناتجة عن تنفيذ الكتلة المعطاة مرةً واحدةً لكل عنصر من عناصر الكائنLazy
الذي استدعي معه.