Project

General

Profile

Feature #709

Enumerator#+

Added by candlerb (Brian Candler) almost 12 years ago. Updated about 2 years ago.

Status:
Rejected
Priority:
Normal
Target version:
[ruby-core:19681]

Description

=begin
Enumerators could be directly composable:

class Enumerator
def +(other)
Enumerator.new do |y|
each { |e| y << e }
other.each { |e| y << e }
end
end
end

if FILE == $0
a = (1..3).to_enum + (10..12).to_enum + (17..20).to_enum
a.each { |i| puts i }
end

The only problem I can see here is that this might open the floodgates to requests for more methods such as & and |, and it's not clear how those would behave. (Personally I'd go for a merge which compares the head items from each of the operands, which assumes that the operands are already in sorted order, but others may disagree)
=end


Related issues

Related to Ruby master - Feature #15144: Enumerator#chainClosedknu (Akinori MUSHA)Actions

Also available in: Atom PDF