module Flows::Plugin::OutputContract::Wrapper

Contains wrappers for initializer and `#call` methods.

@api private

Public Class Methods

new(*args, &block) click to toggle source
Calls superclass method
# File lib/flows/plugin/output_contract/wrapper.rb, line 8
def initialize(*args, &block)
  super(*args, &block)
  klass = self.class
  raise NoContractError, klass if klass.success_contracts.empty? && !klass.skip_output_contract_flag
end

Public Instance Methods

call(*args, &block) click to toggle source
Calls superclass method
# File lib/flows/plugin/output_contract/wrapper.rb, line 14
def call(*args, &block)
  result = super(*args, &block)
  klass = self.class

  return result if klass.skip_output_contract_flag

  Util.transform_result(klass, result)

  result
end