Sha256: 16e6e9c5325051a7362e8c68c0cc41988259fba3c9bc10403f3e11eedf7c503b

Contents?: true

Size: 702 Bytes

Versions: 33

Compression:

Stored size: 702 Bytes

Contents

module Pacer::Pipes
  class MultiPipe < RubyPipe
    import com.tinkerpop.pipes.util.iterators.MultiIterator
    import com.tinkerpop.pipes.Pipe

    attr_reader :pipes

    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

    def +(enum)
      MultiPipe.new(pipes + [enum])
    end

    def -(enum)
      MultiPipe.new(pipes - [enum])
    end

    def getCurrentPath
      starts.getCurrentPath
    end

    def processNextStart
      starts.next
    end

    def inspect
      "#<MultiPipe #{ pipes.count } sources>"
    end
  end
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
pacer-2.0.24-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.22-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.20-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.19-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.18-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.17-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.16-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.15-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.14-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.13-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.12-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.10-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.10.pre-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.8-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.6-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.4.pre-java lib/pacer/pipe/multi_pipe.rb
pacer-2.0.0.pre-java lib/pacer/pipe/multi_pipe.rb
pacer-1.6.0-java lib/pacer/pipe/multi_pipe.rb
pacer-1.5.4-java lib/pacer/pipe/multi_pipe.rb
pacer-1.5.3-java lib/pacer/pipe/multi_pipe.rb