Class

Exception

Inheritance
< 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

Class

Visibility Signature
public exception (...)
public new (...)
public yaml_new ( klass, tag, val )

Instance

Visibility Signature
public backtrace ()
public exception (...)
public inspect ()
public message ()
public set_backtrace (p1)
public to_s ()
public to_str ()
public to_yaml ( opts = {} )

Class Method Detail

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.

Exception.new(msg = nil) => exception

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

yaml_new( klass, tag, val )

Instance Method Detail

exception.backtrace => array

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

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.

exception.inspect => string

Return this exception‘s class name an message

exception.message => string
exception.to_str => string

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.

exc.set_backtrace(array) => array

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

exception.to_s => string

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

exception.message => string
exception.to_str => string

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_yaml( opts = {} )