org.jruby
Class RubyException

java.lang.Object
  extended by org.jruby.RubyBasicObject
      extended by org.jruby.RubyObject
          extended by org.jruby.RubyException
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<IRubyObject>, InstanceVariables, InternalVariables, IRubyObject, CoreObjectType
Direct Known Subclasses:
NativeException, RubyIconv.RubyFailure, RubyLocalJumpError, RubyNameError, RubySystemCallError, RubySystemExit

public class RubyException
extends RubyObject

Author:
jpetersen
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jruby.RubyObject
RubyObject.Data
 
Nested classes/interfaces inherited from class org.jruby.RubyBasicObject
RubyBasicObject.Finalizer
 
Field Summary
static ObjectAllocator EXCEPTION_ALLOCATOR
           
 IRubyObject message
           
static int TRACE_HEAD
           
static int TRACE_MAX
           
static int TRACE_TAIL
           
 
Fields inherited from class org.jruby.RubyObject
OBJECT_ALLOCATOR, REIFYING_OBJECT_ALLOCATOR
 
Fields inherited from class org.jruby.RubyBasicObject
ALL_F, BASICOBJECT_ALLOCATOR, COMPARE_BY_IDENTITY_F, ERR_INSECURE_SET_INST_VAR, FALSE_F, FL_USHIFT, flags, FROZEN_F, metaClass, NEVER, NIL_F, TAINTED_F, UNDEF, UNTRUSTED_F, USER0_F, USER1_F, USER2_F, USER3_F, USER4_F, USER5_F, USER6_F, USER7_F, USER8_F
 
Fields inherited from interface org.jruby.runtime.builtin.IRubyObject
NULL_ARRAY
 
Constructor Summary
protected RubyException(Ruby runtime, RubyClass rubyClass)
           
  RubyException(Ruby runtime, RubyClass rubyClass, java.lang.String message)
           
 
Method Summary
 IRubyObject backtrace()
           
 void copySpecialInstanceVariables(IRubyObject clone)
          Lots of MRI objects keep their state in non-lookupable ivars (e:g.
static RubyClass createExceptionClass(Ruby runtime)
           
 RubyException exception(IRubyObject[] args)
           
static IRubyObject exception(ThreadContext context, IRubyObject recv, IRubyObject[] args, Block block)
           
 void forceBacktrace(IRubyObject backtrace)
           
 IRubyObject getBacktrace()
           
 BacktraceData getBacktraceData()
           
 RubyStackTraceElement[] getBacktraceElements()
           
 void initBacktrace()
           
 IRubyObject initialize(IRubyObject[] args, Block block)
           
 IRubyObject inspect(ThreadContext context)
          inspects an object and return a kind of debug information
 IRubyObject message(ThreadContext context)
           
static RubyException newException(Ruby runtime, RubyClass excptnClass, java.lang.String msg)
           
static IRubyObject newException(ThreadContext context, RubyClass exceptionClass, IRubyObject message)
           
static IRubyObject op_eqq(ThreadContext context, IRubyObject recv, IRubyObject other)
           
 IRubyObject op_equal(ThreadContext context, IRubyObject other)
           
 void prepareBacktrace(ThreadContext context, boolean nativeException)
           
 void printBacktrace(java.io.PrintStream errorStream)
           
 IRubyObject set_backtrace(IRubyObject obj)
           
 void setBacktraceData(BacktraceData backtraceData)
           
 IRubyObject to_s(ThreadContext context)
           
 IRubyObject to_str(ThreadContext context)
           
 
Methods inherited from class org.jruby.RubyObject
attachToObjectSpace, callInit, callInit, callInit, callInit, callInit, convertToType, createObjectClass, eqlInternal, equalInternal, equals, getNativeTypeIndex, hashCode, initialize, op_eqq, puts, specificEval, toString
 
Methods inherited from class org.jruby.RubyBasicObject
addFinalizer, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkCallMethod, checkFrozen, checkStringType, checkStringType19, compareTo, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToInteger, convertToString, copyInstanceVariablesInto, createBasicObjectClass, dataGetStruct, dataGetStructChecked, dataWrapStruct, display, dup, ensureInstanceVariablesSettable, eql_p, eql, equal_p, equal_p19, evalUnder, extend, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, freeze, frozen_p, getFlag, getInstanceEvalClass, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariables, getJavaClass, getMetaClass, getObjectId, getRuntime, getSingletonClass, getSingletonClassClone, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hash, hashyInspect, hasInstanceVariable, hasInternalVariable, hasVariables, id_deprecated, id, infectBy, initialize_copy, initialize19, initialize19, initialize19, initialize19, initialize19, initObjectId, inspect, inspectHashCode, instance_eval, instance_eval, instance_eval, instance_eval, instance_eval19, instance_eval19, instance_eval19, instance_eval19, instance_exec, instance_exec19, instance_of_p, instance_variable_defined_p, instance_variable_get, instance_variable_set, instance_variables, instance_variables19, isBuiltin, isClass, isFalse, isFrozen, isImmediate, isModule, isNil, isTaint, isTrue, isUntrusted, kind_of_p, makeMetaClass, method_missing19, method, method19, methods, methods, methods19, nil_p, op_cmp, op_equal_19, op_match, op_match19, op_not_equal, op_not_match, op_not, private_methods, private_methods19, protected_methods, protected_methods19, public_methods, public_methods19, rbClone, remove_instance_variable, removeFinalizers, removeInstanceVariable, removeInternalVariable, respond_to_p, respond_to_p, respond_to_p19, respond_to_p19, respondsTo, respondsToMissing, respondsToMissing, send, send, send, send, send, send19, send19, send19, send19, send19, setFlag, setFrozen, setInstanceVariable, setInternalVariable, setMetaClass, setTaint, setUntrusted, setVariable, singleton_method_added19, singleton_method_removed19, singleton_method_undefined19, singleton_methods, singleton_methods19, specificEval, specificEval, specificEval, specificEval, syncVariables, syncVariables, taint, taint, tainted_p, testFrozen, testFrozen, to_a, to_s, toJava, trust, type_deprecated, type, untaint, untrust, untrusted_p, validateInstanceVariable, variableTableContains, variableTableFastContains, variableTableFastFetch, variableTableFastStore, variableTableFetch, variableTableRemove, variableTableStore, variableTableSync, yieldUnder, yieldUnder
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

message

public IRubyObject message

TRACE_HEAD

public static final int TRACE_HEAD
See Also:
Constant Field Values

TRACE_TAIL

public static final int TRACE_TAIL
See Also:
Constant Field Values

TRACE_MAX

public static final int TRACE_MAX
See Also:
Constant Field Values

EXCEPTION_ALLOCATOR

public static ObjectAllocator EXCEPTION_ALLOCATOR
Constructor Detail

RubyException

protected RubyException(Ruby runtime,
                        RubyClass rubyClass)

RubyException

public RubyException(Ruby runtime,
                     RubyClass rubyClass,
                     java.lang.String message)
Method Detail

createExceptionClass

public static RubyClass createExceptionClass(Ruby runtime)

newException

public static RubyException newException(Ruby runtime,
                                         RubyClass excptnClass,
                                         java.lang.String msg)

setBacktraceData

public void setBacktraceData(BacktraceData backtraceData)

getBacktraceData

public BacktraceData getBacktraceData()

getBacktraceElements

public RubyStackTraceElement[] getBacktraceElements()

prepareBacktrace

public void prepareBacktrace(ThreadContext context,
                             boolean nativeException)

forceBacktrace

public void forceBacktrace(IRubyObject backtrace)

getBacktrace

public IRubyObject getBacktrace()

initBacktrace

public void initBacktrace()

initialize

public IRubyObject initialize(IRubyObject[] args,
                              Block block)

backtrace

public IRubyObject backtrace()

set_backtrace

public IRubyObject set_backtrace(IRubyObject obj)

exception

public static IRubyObject exception(ThreadContext context,
                                    IRubyObject recv,
                                    IRubyObject[] args,
                                    Block block)

exception

public RubyException exception(IRubyObject[] args)

to_s

public IRubyObject to_s(ThreadContext context)

to_str

public IRubyObject to_str(ThreadContext context)

message

public IRubyObject message(ThreadContext context)

inspect

public IRubyObject inspect(ThreadContext context)
inspects an object and return a kind of debug information

Returns:
A RubyString containing the debug information.

op_equal

public IRubyObject op_equal(ThreadContext context,
                            IRubyObject other)
Specified by:
op_equal in interface IRubyObject
Overrides:
op_equal in class RubyBasicObject

op_eqq

public static IRubyObject op_eqq(ThreadContext context,
                                 IRubyObject recv,
                                 IRubyObject other)

copySpecialInstanceVariables

public void copySpecialInstanceVariables(IRubyObject clone)
Description copied from class: RubyBasicObject
Lots of MRI objects keep their state in non-lookupable ivars (e:g. Range, Struct, etc). This method is responsible for dupping our java field equivalents

Specified by:
copySpecialInstanceVariables in interface IRubyObject
Overrides:
copySpecialInstanceVariables in class RubyBasicObject

printBacktrace

public void printBacktrace(java.io.PrintStream errorStream)

newException

public static IRubyObject newException(ThreadContext context,
                                       RubyClass exceptionClass,
                                       IRubyObject message)


Copyright © 2002-2009 JRuby Team. All Rights Reserved.