|
" 2013 FRC Java API " |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sun.squawk.DebuggerSupport.StackInspector
public static class DebuggerSupport.StackInspector
A StackInspector instance is used in conjunction with DebuggerSupport.inspectStack(com.sun.squawk.DebuggerSupport.StackInspector, com.sun.squawk.ExecutionPoint, int)
to traverse one or more stack frames in a suspended thread. The values of the slots
in each frame can be inspected.
Field Summary | |
---|---|
protected boolean |
doSlots
Determines if the inspector should be given a chance to inspect the value of the slots in each frame. |
protected VMThread |
vmThread
The thread whose call stack is being inspected. |
Constructor Summary | |
---|---|
protected |
DebuggerSupport.StackInspector(VMThread thread,
boolean doSlots)
Constructor. |
Method Summary | |
---|---|
Object |
getResult()
Gets the result (if any) of the inspection. |
Klass[] |
getTypeMap(int frameNo,
Object mp,
int parameterCount)
Figure out the type map for the given frameNo and method pointer. |
void |
inspectFrame(Object mp,
Offset bci,
int frame,
Offset fo)
Invoked to inspect a frame in the thread's call stack |
void |
inspectSlot(boolean isParameter,
int slot,
Klass type,
long value)
Invoked to inspect the value of a primitive typed slot within a frame in the thread's call stack |
void |
inspectSlot(boolean isParameter,
int slot,
Object value)
Invoked to inspect the value of a reference typed slot within a frame in the thread's call stack |
void |
postInspection()
Hooks for any inspector specific behaviour that must run after the frame inspection is completed. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final boolean doSlots
protected final VMThread vmThread
Constructor Detail |
---|
protected DebuggerSupport.StackInspector(VMThread thread, boolean doSlots)
thread
- the thread whose call stack is being inspected. This thread must be suspended
at the time the inspection is performed.doSlots
- true if this inspector should be given a change to inspect the value
of the slots in each frame by means of having it inspectSlot(boolean, int, java.lang.Object)
methods invokedMethod Detail |
---|
public void inspectFrame(Object mp, Offset bci, int frame, Offset fo)
mp
- the method to which the frame pertainsbci
- the current bytecode index of the instruction pointerframe
- the frame's identifier within the call stack. A frame
is identified by the number of frames between it and the inner most frame
(i.e. the inner most frame will be 0)fo
- the frame's offset from the top of the stackpublic void inspectSlot(boolean isParameter, int slot, Object value)
isParameter
- true if the slot holds the value of a parameterslot
- the slot indexvalue
- the value in the slotpublic void inspectSlot(boolean isParameter, int slot, Klass type, long value)
isParameter
- true if the slot holds the value of a parameterslot
- the slot indextype
- int
, float
, long
,
double
, address
,
offset
or uword
value
- the value in the slotpublic void postInspection()
public Object getResult()
public Klass[] getTypeMap(int frameNo, Object mp, int parameterCount)
frameNo
- mp
- parameterCount
-
|
" 2013 FRC Java API " |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |