Sha256: 1369a8d2a4aa71a4019159abad508178fa5ca16c9dbea05edb129195b6cec67f

Contents?: true

Size: 1020 Bytes

Versions: 10

Compression:

Stored size: 1020 Bytes

Contents

module Interactor
  # Internal: Error raised during Interactor::Context failure. The error stores
  # a copy of the failed context for debugging purposes.
  class Failure < StandardError
    # Internal: Gets the Interactor::Context of the Interactor::Failure
    # instance.
    attr_reader :context

    # Internal: Initialize an Interactor::Failure.
    #
    # context - An Interactor::Context to be stored within the
    #           Interactor::Failure instance. (default: nil)
    #
    # Examples
    #
    #   Interactor::Failure.new
    #   # => #<Interactor::Failure: Interactor::Failure>
    #
    #   context = Interactor::Context.new(foo: "bar")
    #   # => #<Interactor::Context foo="bar">
    #   Interactor::Failure.new(context)
    #   # => #<Interactor::Failure: #<Interactor::Context foo="bar">>
    #
    #   raise Interactor::Failure, context
    #   # => Interactor::Failure: #<Interactor::Context foo="bar">
    def initialize(context = nil)
      @context = context
      super
    end
  end
end

Version data entries

10 entries across 10 versions & 2 rubygems

Version Path
interactor_with_steroids-1.2.0 lib/interactor/error.rb
interactor_with_steroids-1.1.2 lib/interactor/error.rb
interactor_with_steroids-1.1.1 lib/interactor/error.rb
interactor_with_steroids-1.1.0 lib/interactor/error.rb
interactor_with_steroids-1.0.0 lib/interactor/error.rb
interactor_with_steroids-0.0.1 lib/interactor/error.rb
interactor-3.1.2 lib/interactor/error.rb
interactor-3.1.1 lib/interactor/error.rb
interactor-3.1.0 lib/interactor/error.rb
interactor-3.0.1 lib/interactor/error.rb