| Package | Description | 
|---|---|
| org.objectweb.asm | 
 Provides a small and fast bytecode manipulation framework. 
 | 
| org.objectweb.asm.commons | 
 Provides some useful class and method adapters. 
 | 
| org.objectweb.asm.tree | 
 
Provides an ASM visitor that constructs a tree representation of the
classes it visits. 
 | 
| org.objectweb.asm.util | 
 Provides ASM visitors that can be useful for programming and
debugging purposes. 
 | 
| org.objectweb.asm.xml | 
 Provides SAX 2.0 adapters for ASM
visitors to convert classes to and from XML. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
protected Label[] | 
Attribute.getLabels()
Returns the labels corresponding to this attribute. 
 | 
protected Label | 
ClassReader.readLabel(int offset,
         Label[] labels)
Returns the label corresponding to the given offset. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
protected Attribute | 
Attribute.read(ClassReader cr,
    int off,
    int len,
    char[] buf,
    int codeOff,
    Label[] labels)
Reads a  
type attribute. | 
protected Label | 
ClassReader.readLabel(int offset,
         Label[] labels)
Returns the label corresponding to the given offset. 
 | 
void | 
MethodVisitor.visitJumpInsn(int opcode,
             Label label)
Visits a jump instruction. 
 | 
void | 
MethodVisitor.visitLabel(Label label)
Visits a label. 
 | 
void | 
MethodVisitor.visitLineNumber(int line,
               Label start)
Visits a line number declaration. 
 | 
void | 
MethodVisitor.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)
Visits a local variable declaration. 
 | 
AnnotationVisitor | 
MethodVisitor.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)
Visits an annotation on a local variable type. 
 | 
AnnotationVisitor | 
MethodVisitor.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)
Visits an annotation on a local variable type. 
 | 
void | 
MethodVisitor.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)
Visits a LOOKUPSWITCH instruction. 
 | 
void | 
MethodVisitor.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)
Visits a LOOKUPSWITCH instruction. 
 | 
void | 
MethodVisitor.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)
Visits a TABLESWITCH instruction. 
 | 
void | 
MethodVisitor.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)
Visits a TABLESWITCH instruction. 
 | 
void | 
MethodVisitor.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)
Visits a try catch block. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
Label | 
GeneratorAdapter.mark()
Marks the current code position with a new label. 
 | 
Label | 
GeneratorAdapter.newLabel()
Creates a new  
Label. | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
GeneratorAdapter.catchException(Label start,
              Label end,
              Type exception)
Marks the start of an exception handler. 
 | 
void | 
TableSwitchGenerator.generateCase(int key,
            Label end)
Generates the code for a switch case. 
 | 
void | 
InstructionAdapter.goTo(Label label)  | 
void | 
GeneratorAdapter.goTo(Label label)
Generates the instruction to jump to the given label. 
 | 
void | 
InstructionAdapter.ifacmpeq(Label label)  | 
void | 
InstructionAdapter.ifacmpne(Label label)  | 
void | 
GeneratorAdapter.ifCmp(Type type,
     int mode,
     Label label)
Generates the instructions to jump to a label based on the comparison of
 the top two stack values. 
 | 
void | 
InstructionAdapter.ifeq(Label label)  | 
void | 
InstructionAdapter.ifge(Label label)  | 
void | 
InstructionAdapter.ifgt(Label label)  | 
void | 
GeneratorAdapter.ifICmp(int mode,
      Label label)
Generates the instructions to jump to a label based on the comparison of
 the top two integer stack values. 
 | 
void | 
InstructionAdapter.ificmpeq(Label label)  | 
void | 
InstructionAdapter.ificmpge(Label label)  | 
void | 
InstructionAdapter.ificmpgt(Label label)  | 
void | 
InstructionAdapter.ificmple(Label label)  | 
void | 
InstructionAdapter.ificmplt(Label label)  | 
void | 
InstructionAdapter.ificmpne(Label label)  | 
void | 
InstructionAdapter.ifle(Label label)  | 
void | 
InstructionAdapter.iflt(Label label)  | 
void | 
InstructionAdapter.ifne(Label label)  | 
void | 
InstructionAdapter.ifnonnull(Label label)  | 
void | 
GeneratorAdapter.ifNonNull(Label label)
Generates the instruction to jump to the given label if the top stack
 value is not null. 
 | 
void | 
InstructionAdapter.ifnull(Label label)  | 
void | 
GeneratorAdapter.ifNull(Label label)
Generates the instruction to jump to the given label if the top stack
 value is null. 
 | 
void | 
GeneratorAdapter.ifZCmp(int mode,
      Label label)
Generates the instructions to jump to a label based on the comparison of
 the top integer stack value with zero. 
 | 
void | 
InstructionAdapter.jsr(Label label)  | 
void | 
InstructionAdapter.lookupswitch(Label dflt,
            int[] keys,
            Label[] labels)  | 
void | 
InstructionAdapter.lookupswitch(Label dflt,
            int[] keys,
            Label[] labels)  | 
void | 
InstructionAdapter.mark(Label label)  | 
void | 
GeneratorAdapter.mark(Label label)
Marks the current code position with the given label. 
 | 
void | 
InstructionAdapter.tableswitch(int min,
           int max,
           Label dflt,
           Label... labels)  | 
void | 
InstructionAdapter.tableswitch(int min,
           int max,
           Label dflt,
           Label... labels)  | 
void | 
JSRInlinerAdapter.visitJumpInsn(int opcode,
             Label lbl)
Detects a JSR instruction and sets a flag to indicate we will need to do
 inlining. 
 | 
void | 
InstructionAdapter.visitJumpInsn(int opcode,
             Label label)  | 
void | 
CodeSizeEvaluator.visitJumpInsn(int opcode,
             Label label)  | 
void | 
AnalyzerAdapter.visitJumpInsn(int opcode,
             Label label)  | 
void | 
AdviceAdapter.visitJumpInsn(int opcode,
             Label label)  | 
void | 
InstructionAdapter.visitLabel(Label label)  | 
void | 
AnalyzerAdapter.visitLabel(Label label)  | 
void | 
AdviceAdapter.visitLabel(Label label)  | 
void | 
RemappingMethodAdapter.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)  | 
void | 
LocalVariablesSorter.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)  | 
AnnotationVisitor | 
RemappingMethodAdapter.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
AnnotationVisitor | 
RemappingMethodAdapter.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
AnnotationVisitor | 
LocalVariablesSorter.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
AnnotationVisitor | 
LocalVariablesSorter.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
void | 
InstructionAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
InstructionAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
CodeSizeEvaluator.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
CodeSizeEvaluator.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
AnalyzerAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
AnalyzerAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
AdviceAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
AdviceAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
InstructionAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
InstructionAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
CodeSizeEvaluator.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
CodeSizeEvaluator.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
AnalyzerAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
AnalyzerAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
AdviceAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
AdviceAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
RemappingMethodAdapter.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)  | 
void | 
AdviceAdapter.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)  | 
| Modifier and Type | Method and Description | 
|---|---|
Label | 
LabelNode.getLabel()  | 
| Modifier and Type | Method and Description | 
|---|---|
protected LabelNode | 
MethodNode.getLabelNode(Label l)
Returns the LabelNode corresponding to the given Label. 
 | 
void | 
MethodNode.visitJumpInsn(int opcode,
             Label label)  | 
void | 
MethodNode.visitLabel(Label label)  | 
void | 
MethodNode.visitLineNumber(int line,
               Label start)  | 
void | 
MethodNode.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)  | 
AnnotationVisitor | 
MethodNode.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
AnnotationVisitor | 
MethodNode.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
void | 
MethodNode.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
MethodNode.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
MethodNode.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
MethodNode.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
MethodNode.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)  | 
| Constructor and Description | 
|---|
LabelNode(Label label)  | 
| Modifier and Type | Field and Description | 
|---|---|
protected Map<Label,String> | 
Textifier.labelNames
The label names. 
 | 
protected Map<Label,String> | 
ASMifier.labelNames
The label names. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
protected void | 
Textifier.appendLabel(Label l)
Appends the name of the given label to  
buf. | 
protected void | 
ASMifier.appendLabel(Label l)
Appends the name of the given label to  
buf. | 
protected void | 
ASMifier.declareLabel(Label l)
Appends a declaration of the given label to  
buf. | 
void | 
TraceMethodVisitor.visitJumpInsn(int opcode,
             Label label)  | 
void | 
Textifier.visitJumpInsn(int opcode,
             Label label)  | 
abstract void | 
Printer.visitJumpInsn(int opcode,
             Label label)
Method instruction. 
 | 
void | 
CheckMethodAdapter.visitJumpInsn(int opcode,
             Label label)  | 
void | 
ASMifier.visitJumpInsn(int opcode,
             Label label)  | 
void | 
TraceMethodVisitor.visitLabel(Label label)  | 
void | 
Textifier.visitLabel(Label label)  | 
abstract void | 
Printer.visitLabel(Label label)
Method label. 
 | 
void | 
CheckMethodAdapter.visitLabel(Label label)  | 
void | 
ASMifier.visitLabel(Label label)  | 
void | 
TraceMethodVisitor.visitLineNumber(int line,
               Label start)  | 
void | 
Textifier.visitLineNumber(int line,
               Label start)  | 
abstract void | 
Printer.visitLineNumber(int line,
               Label start)
Method debug info. 
 | 
void | 
CheckMethodAdapter.visitLineNumber(int line,
               Label start)  | 
void | 
ASMifier.visitLineNumber(int line,
               Label start)  | 
void | 
TraceMethodVisitor.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)  | 
void | 
Textifier.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)  | 
abstract void | 
Printer.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)
Method debug info. 
 | 
void | 
CheckMethodAdapter.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)  | 
void | 
ASMifier.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)  | 
AnnotationVisitor | 
TraceMethodVisitor.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
AnnotationVisitor | 
TraceMethodVisitor.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
Printer | 
Textifier.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
Printer | 
Textifier.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
Printer | 
Printer.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)
Local variable type annotation. 
 | 
Printer | 
Printer.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)
Local variable type annotation. 
 | 
AnnotationVisitor | 
CheckMethodAdapter.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
AnnotationVisitor | 
CheckMethodAdapter.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
Printer | 
ASMifier.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
Printer | 
ASMifier.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
void | 
TraceMethodVisitor.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
TraceMethodVisitor.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
Textifier.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
Textifier.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
abstract void | 
Printer.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)
Method instruction. 
 | 
abstract void | 
Printer.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)
Method instruction. 
 | 
void | 
CheckMethodAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
CheckMethodAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
ASMifier.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
ASMifier.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
TraceMethodVisitor.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
TraceMethodVisitor.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
Textifier.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
Textifier.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
abstract void | 
Printer.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)
Method instruction. 
 | 
abstract void | 
Printer.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)
Method instruction. 
 | 
void | 
CheckMethodAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
CheckMethodAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
ASMifier.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
ASMifier.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
TraceMethodVisitor.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)  | 
void | 
Textifier.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)  | 
abstract void | 
Printer.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)
Method exception handler. 
 | 
void | 
CheckMethodAdapter.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)  | 
void | 
ASMifier.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
ASMifiable.asmify(StringBuffer buf,
      String varName,
      Map<Label,String> labelNames)
Prints the ASM code to create an attribute equal to this attribute. 
 | 
void | 
Textifiable.textify(StringBuffer buf,
       Map<Label,String> labelNames)
Build a human readable representation of this attribute. 
 | 
| Constructor and Description | 
|---|
CheckMethodAdapter(int api,
                  MethodVisitor mv,
                  Map<Label,Integer> labels)
Constructs a new  
CheckMethodAdapter object. | 
CheckMethodAdapter(int access,
                  String name,
                  String desc,
                  MethodVisitor cmv,
                  Map<Label,Integer> labels)
Constructs a new  
CheckMethodAdapter object. | 
CheckMethodAdapter(MethodVisitor mv,
                  Map<Label,Integer> labels)
Constructs a new  
CheckMethodAdapter object. | 
| Modifier and Type | Field and Description | 
|---|---|
protected Map<Object,Label> | 
ASMContentHandler.labels
Map of the active  
Label instances for current method. | 
| Modifier and Type | Method and Description | 
|---|---|
protected Label | 
ASMContentHandler.Rule.getLabel(Object label)  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
SAXCodeAdapter.visitJumpInsn(int opcode,
             Label label)  | 
void | 
SAXCodeAdapter.visitLabel(Label label)  | 
void | 
SAXCodeAdapter.visitLineNumber(int line,
               Label start)  | 
void | 
SAXCodeAdapter.visitLocalVariable(String name,
                  String desc,
                  String signature,
                  Label start,
                  Label end,
                  int index)  | 
AnnotationVisitor | 
SAXCodeAdapter.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
AnnotationVisitor | 
SAXCodeAdapter.visitLocalVariableAnnotation(int typeRef,
                            TypePath typePath,
                            Label[] start,
                            Label[] end,
                            int[] index,
                            String desc,
                            boolean visible)  | 
void | 
SAXCodeAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
SAXCodeAdapter.visitLookupSwitchInsn(Label dflt,
                     int[] keys,
                     Label[] labels)  | 
void | 
SAXCodeAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
SAXCodeAdapter.visitTableSwitchInsn(int min,
                    int max,
                    Label dflt,
                    Label... labels)  | 
void | 
SAXCodeAdapter.visitTryCatchBlock(Label start,
                  Label end,
                  Label handler,
                  String type)  |