Class: Pacer::Pipes::MultiPipe
- Inherits:
-
RubyPipe
- Object
- AbstractPipe
- RubyPipe
- Pacer::Pipes::MultiPipe
show all
- Defined in:
- lib/pacer/pipe/multi_pipe.rb
Instance Attribute Summary collapse
Attributes inherited from RubyPipe
#starts
Instance Method Summary
collapse
Methods inherited from RubyPipe
#enablePath, #reset, #setStarts
Constructor Details
#initialize(enums) ⇒ MultiPipe
Returns a new instance of MultiPipe.
8
9
10
11
12
13
14
15
16
17
18
|
# File 'lib/pacer/pipe/multi_pipe.rb', line 8
def initialize(enums)
super()
@pipes = enums.map do |e|
if e.is_a? Pipe
e
else
e.to_iterable
end
end
setStarts MultiIterator.new(*pipes)
end
|
Instance Attribute Details
#pipes ⇒ Object
Returns the value of attribute pipes.
6
7
8
|
# File 'lib/pacer/pipe/multi_pipe.rb', line 6
def pipes
@pipes
end
|
Instance Method Details
#+(enum) ⇒ Object
20
21
22
|
# File 'lib/pacer/pipe/multi_pipe.rb', line 20
def +(enum)
MultiPipe.new(pipes + [enum])
end
|
#-(enum) ⇒ Object
24
25
26
|
# File 'lib/pacer/pipe/multi_pipe.rb', line 24
def -(enum)
MultiPipe.new(pipes - [enum])
end
|
#getCurrentPath ⇒ Object
28
29
30
|
# File 'lib/pacer/pipe/multi_pipe.rb', line 28
def getCurrentPath
starts.getCurrentPath
end
|
#inspect ⇒ Object
36
37
38
|
# File 'lib/pacer/pipe/multi_pipe.rb', line 36
def inspect
"#<MultiPipe #{ pipes.count } sources>"
end
|
#processNextStart ⇒ Object
32
33
34
|
# File 'lib/pacer/pipe/multi_pipe.rb', line 32
def processNextStart
starts.next
end
|