Class Exception
In: error.c
Parent: Object

Descendents of class Exception are used to communicate between raise methods 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. Programs may subclass Exception to add additional information.

Methods

backtrace   exception   exception   inspect   message   new   set_backtrace   to_s   to_str  

Public Class methods

exc.exception(string) → an_exception or exc

With no argument, or if the argument is the same as the receiver, return the receiver. Otherwise, create a new exception object of the same class as the receiver, but with a message equal to string.to_str.

Construct a new Exception object, optionally passing in a message.

Public Instance methods

Returns any backtrace associated with the exception. The backtrace is an array of strings, each containing either ``filename:lineNo: in `method’’’ or ``filename:lineNo.’‘

   def a
     raise "boom"
   end

   def b
     a()
   end

   begin
     b()
   rescue => detail
     print detail.backtrace.join("\n")
   end

produces:

   prog.rb:2:in `a'
   prog.rb:6:in `b'
   prog.rb:10

With no argument, or if the argument is the same as the receiver, return the receiver. Otherwise, create a new exception object of the same class as the receiver, but with a message equal to string.to_str.

Return this exception’s class name an message

Returns the result of invoking exception.to_s. Normally this returns the exception’s message or name. By supplying a to_str method, exceptions are agreeing to be used where Strings are expected.

Sets the backtrace information associated with exc. The argument must be an array of String objects in the format described in Exception#backtrace.

Returns exception’s message (or the name of the exception if no message is set).

Returns the result of invoking exception.to_s. Normally this returns the exception’s message or name. By supplying a to_str method, exceptions are agreeing to be used where Strings are expected.

To view or add comments on this documentation, please go to the API wiki.

[Validate]