|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.objectweb.asm.tree.analysis.Interpreter<SourceValue>
org.objectweb.asm.tree.analysis.SourceInterpreter
public class SourceInterpreter
An Interpreter
for SourceValue
values.
Field Summary |
---|
Fields inherited from class org.objectweb.asm.tree.analysis.Interpreter |
---|
api |
Constructor Summary | |
---|---|
|
SourceInterpreter()
|
protected |
SourceInterpreter(int api)
|
Method Summary | |
---|---|
SourceValue |
binaryOperation(AbstractInsnNode insn,
SourceValue value1,
SourceValue value2)
Interprets a bytecode instruction with two arguments. |
SourceValue |
copyOperation(AbstractInsnNode insn,
SourceValue value)
Interprets a bytecode instruction that moves a value on the stack or to or from local variables. |
SourceValue |
merge(SourceValue d,
SourceValue w)
Merges two values. |
SourceValue |
naryOperation(AbstractInsnNode insn,
List<? extends SourceValue> values)
Interprets a bytecode instruction with a variable number of arguments. |
SourceValue |
newOperation(AbstractInsnNode insn)
Interprets a bytecode instruction without arguments. |
SourceValue |
newValue(Type type)
Creates a new value that represents the given type. |
void |
returnOperation(AbstractInsnNode insn,
SourceValue value,
SourceValue expected)
Interprets a bytecode return instruction. |
SourceValue |
ternaryOperation(AbstractInsnNode insn,
SourceValue value1,
SourceValue value2,
SourceValue value3)
Interprets a bytecode instruction with three arguments. |
SourceValue |
unaryOperation(AbstractInsnNode insn,
SourceValue value)
Interprets a bytecode instruction with a single argument. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public SourceInterpreter()
protected SourceInterpreter(int api)
Method Detail |
---|
public SourceValue newValue(Type type)
Interpreter
this
), exception
handler variable and with null
type for variables reserved
by long and double types.
newValue
in class Interpreter<SourceValue>
type
- a primitive or reference type, or null to represent
an uninitialized value.
public SourceValue newOperation(AbstractInsnNode insn)
Interpreter
newOperation
in class Interpreter<SourceValue>
insn
- the bytecode instruction to be interpreted.
public SourceValue copyOperation(AbstractInsnNode insn, SourceValue value)
Interpreter
copyOperation
in class Interpreter<SourceValue>
insn
- the bytecode instruction to be interpreted.value
- the value that must be moved by the instruction.
public SourceValue unaryOperation(AbstractInsnNode insn, SourceValue value)
Interpreter
unaryOperation
in class Interpreter<SourceValue>
insn
- the bytecode instruction to be interpreted.value
- the argument of the instruction to be interpreted.
public SourceValue binaryOperation(AbstractInsnNode insn, SourceValue value1, SourceValue value2)
Interpreter
binaryOperation
in class Interpreter<SourceValue>
insn
- the bytecode instruction to be interpreted.value1
- the first argument of the instruction to be interpreted.value2
- the second argument of the instruction to be interpreted.
public SourceValue ternaryOperation(AbstractInsnNode insn, SourceValue value1, SourceValue value2, SourceValue value3)
Interpreter
ternaryOperation
in class Interpreter<SourceValue>
insn
- the bytecode instruction to be interpreted.value1
- the first argument of the instruction to be interpreted.value2
- the second argument of the instruction to be interpreted.value3
- the third argument of the instruction to be interpreted.
public SourceValue naryOperation(AbstractInsnNode insn, List<? extends SourceValue> values)
Interpreter
naryOperation
in class Interpreter<SourceValue>
insn
- the bytecode instruction to be interpreted.values
- the arguments of the instruction to be interpreted.
public void returnOperation(AbstractInsnNode insn, SourceValue value, SourceValue expected)
Interpreter
returnOperation
in class Interpreter<SourceValue>
insn
- the bytecode instruction to be interpreted.value
- the argument of the instruction to be interpreted.expected
- the expected return type of the analyzed method.public SourceValue merge(SourceValue d, SourceValue w)
Interpreter
merge
in class Interpreter<SourceValue>
d
- a value.w
- another value.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |