org.objectweb.asm.tree.analysis
public class Analyzer extends Object implements Opcodes
Constructor Summary | |
---|---|
Analyzer(Interpreter interpreter)
Constructs a new {@link Analyzer}.
|
Method Summary | |
---|---|
Frame[] | analyze(String owner, MethodNode m)
Analyzes the given method.
|
Frame[] | getFrames()
Returns the symbolic stack frame for each instruction of the last
recently analyzed method.
|
List | getHandlers(int insn)
Returns the exception handlers for the given instruction.
|
int | getIndex(Object insn)
Returns the index of the given instruction.
|
protected void | newControlFlowEdge(Frame frame, Frame successor)
Creates a control flow graph edge. |
protected Frame | newFrame(int nLocals, int nStack)
Constructs a new frame with the given size.
|
protected Frame | newFrame(Frame src)
Constructs a new frame that is identical to the given frame.
|
Parameters: interpreter the interpreter to be used to symbolically interpret the bytecode instructions.
Parameters: owner the internal name of the class to which the method belongs. m the method to be analyzed.
Returns: the symbolic state of the execution stack frame at each bytecode instruction of the method. The size of the returned array is equal to the number of instructions (and labels) of the method. A given frame is null if and only if the corresponding instruction cannot be reached (dead code).
Throws: AnalyzerException if a problem occurs during the analysis.
Returns: the symbolic state of the execution stack frame at each bytecode instruction of the method. The size of the returned array is equal to the number of instructions (and labels) of the method. A given frame is null if the corresponding instruction cannot be reached, or if an error occured during the analysis of the method.
Parameters: insn the index of an instruction of the last recently analyzed method.
Returns: a list of {@link TryCatchBlockNode} objects.
Parameters: insn a {@link Label} or {@link AbstractInsnNode} of the last recently analyzed method.
Returns: the index of the given instruction of the last recently analyzed method.
Parameters: frame the frame corresponding to an instruction. successor the frame corresponding to a successor instruction.
Parameters: nLocals the maximum number of local variables of the frame. nStack the maximum stack size of the frame.
Returns: the created frame.
Parameters: src a frame.
Returns: the created frame.