Class AnalyzerAdapter


  • public class AnalyzerAdapter
    extends MethodVisitor
    A MethodVisitor that keeps track of stack map frame changes between visitFrame(int, int, Object[], int, Object[]) calls. This adapter must be used with the ClassReader.EXPAND_FRAMES option. Each visitX instruction delegates to the next visitor in the chain, if any, and then simulates the effect of this instruction on the stack map frame, represented by locals and stack. The next visitor in the chain can get the state of the stack map frame before each instruction by reading the value of these fields in its visitX methods (this requires a reference to the AnalyzerAdapter that is before it in the chain). If this adapter is used with a class that does not contain stack map table attributes (i.e., pre Java 6 classes) then this adapter may not be able to compute the stack map frame for each instruction. In this case no exception is thrown but the locals and stack fields will be null for these instructions.
    Author:
    Eric Bruneton