Class: Batsir::DSL::ChainMapping

Inherits:
Blockenspiel::Base
  • Object
show all
Defined in:
lib/batsir/dsl/dsl_mappings.rb

Instance Method Summary collapse

Constructor Details

#initializeChainMapping

Returns a new instance of ChainMapping.



4
5
6
# File 'lib/batsir/dsl/dsl_mappings.rb', line 4

def initialize
  @chain = nil
end

Instance Method Details

#aggregator_chain(&block) ⇒ Object



8
9
10
11
12
# File 'lib/batsir/dsl/dsl_mappings.rb', line 8

def aggregator_chain(&block)
  @chain = Batsir::Chain.new
  ::Blockenspiel.invoke(block, self)
  @chain
end

#stage(name, &block) ⇒ Object



14
15
16
17
18
19
20
21
# File 'lib/batsir/dsl/dsl_mappings.rb', line 14

def stage(name, &block)
  new_block = ::Proc.new do
    stage name, &block
  end
  stage = ::Blockenspiel.invoke(new_block, Batsir::DSL::StageMapping.new)
  stage.chain = @chain
  @chain.add_stage(stage)
end