Sha256: ef3534429027294b74c7e7c8514391edb19a9655a6a6ee26d9a33ac3989d950e
Contents?: true
Size: 630 Bytes
Versions: 3
Compression:
Stored size: 630 Bytes
Contents
# encoding: UTF-8 module Bunch class Pipeline ENVIRONMENTS = {} def self.define(environment, &block) ENVIRONMENTS[environment.to_s] = block end def self.for_environment(config) environment = config.fetch(:environment) proc = ENVIRONMENTS[environment] || raise("No pipeline defined for #{environment}!") new(proc.call(config)) end def initialize(processors) @processors = processors end def process(input_tree) tree = input_tree @processors.each do |processor| tree = processor.new(tree).result end tree end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
bunch-1.0.0pre3 | lib/bunch/pipeline.rb |
bunch-1.0.0pre2 | lib/bunch/pipeline.rb |
bunch-1.0.0pre1 | lib/bunch/pipeline.rb |