class

Exception

Inherits Reference / Object

Represents errors that occur during application execution.

Exception and its descendants are used to communicate between raise and rescue statements in begin ... end blocks. Exception objects carry information about the exception – its type (the exception’s class name), an optional descriptive string, and optional traceback information. Exception subclasses may add additional information.

Constructors

new(message : String | Nil = nil, cause : Exception | Nil = nil)
Source

Instance methods

backtrace

Returns any backtrace associated with the exception. The backtrace is an array of strings, each containing “0xAddress: Function at File Line Column”.

Source
backtrace?

Returns any backtrace associated with the exception if the call stack exists. The backtrace is an array of strings, each containing “0xAddress: Function at File Line Column”.

Source
cause

Returns the previous exception at the time this exception was raised. This is useful for wrapping exceptions and retaining the original exception information.

Source
inspect(io : IO) : Nil

Appends a String representation of this object which includes its class name, its object address and the values of all instance variables.

class Person
  def initialize(@name : String, @age : Int32)
  end
end

Person.new("John", 32).inspect # => #<Person:0x10fd31f20 @name="John", @age=32>
Source
inspect_with_backtrace(io : IO) : Nil
Source
inspect_with_backtrace
Source
message
Source
to_s(io : IO) : Nil

Appends a short String representation of this object which includes its class name and its object address.

class Person
  def initialize(@name : String, @age : Int32)
  end
end

Person.new("John", 32).to_s # => #<Person:0x10a199f20>
Source