Sha256: e8134848ac8a54851728fa435799ff513dbc588fb93e939450946ff527151e7a

Contents?: true

Size: 601 Bytes

Versions: 6

Compression:

Stored size: 601 Bytes

Contents

# frozen_string_literal: true

module Opera
  module Operation
    module Instructions
      module Executors
        class Step < Executor
          def call(instruction)
            method = instruction[:method]

            operation.result.add_execution(method)
            operation.send(method)
          rescue StandardError => exception
            reporter&.error(exception)
            operation.result.add_exception(method, "#{exception.message}, for #{operation.inspect}", classname: operation.class.name)
            operation.result
          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
opera-0.2.16 lib/opera/operation/instructions/executors/step.rb
opera-0.2.15 lib/opera/operation/instructions/executors/step.rb
opera-0.2.14 lib/opera/operation/instructions/executors/step.rb
opera-0.2.13 lib/opera/operation/instructions/executors/step.rb
opera-0.2.12 lib/opera/operation/instructions/executors/step.rb
opera-0.2.11 lib/opera/operation/instructions/executors/step.rb