Class: Subroutine::Factory::Builder

Inherits:
Object
  • Object
show all
Defined in:
lib/subroutine/factory/builder.rb

Instance Method Summary collapse

Constructor Details

#initialize(config, *args) ⇒ Builder

Returns a new instance of Builder.



7
8
9
10
11
# File 'lib/subroutine/factory/builder.rb', line 7

def initialize(config, *args)
  @config = config
  @options = config.options
  @args = args
end

Instance Method Details

#execute!Object



13
14
15
16
17
18
19
20
# File 'lib/subroutine/factory/builder.rb', line 13

def execute!
  op = op_class.new(*input_args)
  Array(@options[:befores]).each{|block| block.call(op) }
  op.submit!
  output = extract_output(op)
  Array(@options[:afters]).each{|block| block.call(op, output) }
  output
end