Sha256: 77f259bf6ed0053cb28b8da2d64a84d870b6b01bb62c0b3452f9bd5f95c701c2

Contents?: true

Size: 432 Bytes

Versions: 4

Compression:

Stored size: 432 Bytes

Contents

class Datapipes
  #
  # Build your own source logic in `run` method.
  # Use `produce` method to emitt data to pipe.
  #
  #   def run
  #     10.times {|i| produce(i) }
  #   end
  #
  class Source
    include Composable

    attr_accessor :pipe

    def run_all
      @accumulated ||= [self]
      @accumulated.map {|s| Thread.new { s.run } }
    end

    private

    def produce(data)
      pipe.recieve(data)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
datapipes-0.1.2 lib/datapipes/source.rb
datapipes-0.1.1 lib/datapipes/source.rb
datapipes-0.1.0 lib/datapipes/source.rb
datapipes-0.0.4 lib/datapipes/source.rb