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.



23
24
25
26
27
28
29
30
31
# File 'lib/asir/error.rb', line 23

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.



22
23
24
# File 'lib/asir/error.rb', line 22

def original
  @original
end

Class Method Details

.unforwardableObject



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

def self.unforwardable;    @@unforwardable; end

.unforwardable=(x) ⇒ Object



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

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