|
Oracle Fusion Middleware Java API Reference for Oracle TopLink (Deprecated) 11g Release 1 (11.1.1) B32476-04 |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectoracle.toplink.libraries.asm.tree.analysis.Frame
public class Frame
A symbolic execution stack frame. A stack frame contains a set of local variable slots, and an operand stack. Warning: long and double values are represented by two slots in local variables, and by one slot in the operand stack.
| Constructor Summary | |
|---|---|
Frame(Frame src)
Constructs a new frame that is identical to the given frame. |
|
Frame(int nLocals,
int nStack)
Constructs a new frame with the given size. |
|
| Method Summary | |
|---|---|
void |
clearStack()
Clears the operand stack of this frame. |
void |
execute(AbstractInsnNode insn,
Interpreter interpreter)
|
Value |
getLocal(int i)
Returns the value of the given local variable. |
int |
getLocals()
Returns the maximum number of local variables of this frame. |
Value |
getStack(int i)
Returns the value of the given operand stack slot. |
int |
getStackSize()
Returns the number of values in the operand stack of this frame. |
Frame |
init(Frame src)
Copies the state of the given frame into this frame. |
boolean |
merge(Frame frame,
boolean[] access)
Merges this frame with the given frame (case of a RET instruction). |
boolean |
merge(Frame frame,
Interpreter interpreter)
Merges this frame with the given frame. |
Value |
pop()
Pops a value from the operand stack of this frame. |
void |
push(Value value)
Pushes a value into the operand stack of this frame. |
void |
setLocal(int i,
Value value)
Sets the value of the given local variable. |
java.lang.String |
toString()
Returns a string representation of this frame. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public Frame(int nLocals,
int nStack)
nLocals - the maximum number of local variables of the frame.nStack - the maximum stack size of the frame.public Frame(Frame src)
src - a frame.| Method Detail |
|---|
public Frame init(Frame src)
src - a frame.
public int getLocals()
public Value getLocal(int i)
throws AnalyzerException
i - a local variable index.
AnalyzerException - if the variable does not exist.
public void setLocal(int i,
Value value)
throws AnalyzerException
i - a local variable index.value - the new value of this local variable.
AnalyzerException - if the variable does not exist.public int getStackSize()
public Value getStack(int i)
throws AnalyzerException
i - the index of an operand stack slot.
AnalyzerException - if the operand stack slot does not exist.public void clearStack()
public Value pop()
throws AnalyzerException
AnalyzerException - if the operand stack is empty.
public void push(Value value)
throws AnalyzerException
value - the value that must be pushed into the stack.
AnalyzerException - if the operand stack is full.
public void execute(AbstractInsnNode insn,
Interpreter interpreter)
throws AnalyzerException
AnalyzerException
public boolean merge(Frame frame,
Interpreter interpreter)
throws AnalyzerException
frame - a frame.interpreter - the interpreter used to merge values.
AnalyzerException - if the frames have incompatible sizes.
public boolean merge(Frame frame,
boolean[] access)
frame - a frameaccess - the local variables that have been accessed by the
subroutine to which the RET instruction corresponds.
public java.lang.String toString()
toString in class java.lang.Object
|
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||