org.objectweb.asm.tree.analysis
public class Analyzer extends Object implements Opcodes
Constructor Summary | |
---|---|
Analyzer(Interpreter interpreter)
Constructs a new 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.
|
protected void | newControlFlowEdge(int insn, int successor)
Creates a control flow graph edge. |
protected boolean | newControlFlowExceptionEdge(int insn, int successor)
Creates a control flow graph edge corresponding to an exception handler.
|
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 TryCatchBlockNode objects.
analyze
method during its visit of the method's code).
Parameters: insn an instruction index. successor index of a successor instruction.
analyze
method during its visit
of the method's code).
Parameters: insn an instruction index. successor index of a successor instruction.
Returns: true if this edge must be considered in the data flow analysis performed by this analyzer, or false otherwise. The default implementation of this method always returns true.
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.