Class: ComposableOperations::ComposedOperation::OperationFactory

Inherits:
SimpleDelegator
  • Object
show all
Defined in:
lib/composable_operations/composed_operation.rb

Instance Method Summary collapse

Constructor Details

#initialize(operation_class, options = {}) ⇒ OperationFactory

Returns a new instance of OperationFactory.



6
7
8
9
# File 'lib/composable_operations/composed_operation.rb', line 6

def initialize(operation_class, options = {})
  super(operation_class)
  @_options = options
end

Instance Method Details

#create(context, *input) ⇒ Object



11
12
13
14
15
# File 'lib/composable_operations/composed_operation.rb', line 11

def create(context, *input)
  new *input, Hash[Array(@_options).map do |key, value|
    [key, value.kind_of?(Proc) ? context.instance_exec(&value) : value]
  end]
end