Exception: ASIR::Error::Unforwardable

Inherits:
ASIR::Error
  • Object
show all
Defined in:
lib/asir/error.rb

Overview

Unforwardable Exception.

This encapsulates an Exception that should never be forwarded and re-thrown directly in the client. E.g.: SystemExit, Interrupt.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(msg, original = nil, *args) ⇒ Unforwardable

Returns a new instance of Unforwardable.



33
34
35
36
37
38
39
40
41
# File 'lib/asir/error.rb', line 33

def initialize msg, original = nil, *args
  if ::Exception === msg
    original ||= msg
    msg = "#{original.class.name} #{msg.message}"
  end
  @original = original
  super(msg)
  self.set_backtrace original && original.backtrace
end

Instance Attribute Details

#originalObject

Returns the value of attribute original.



32
33
34
# File 'lib/asir/error.rb', line 32

def original
  @original
end

Class Method Details

.unforwardableObject



42
# File 'lib/asir/error.rb', line 42

def self.unforwardable;    @@unforwardable; end

.unforwardable=(x) ⇒ Object



43
# File 'lib/asir/error.rb', line 43

def self.unforwardable= x; @@unforwardable = x; end