Package net.sf.cglib.core
Class LocalVariablesSorter
java.lang.Object
org.objectweb.asm.MethodVisitor
net.sf.cglib.core.LocalVariablesSorter
- Direct Known Subclasses:
CodeEmitter
public class LocalVariablesSorter
extends org.objectweb.asm.MethodVisitor
A
MethodVisitor that renumbers local variables in their order of
appearance. This adapter allows one to easily add new local variables to a
method.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classMapping from old to new local variable indexes. -
Field Summary
FieldsFields inherited from class org.objectweb.asm.MethodVisitor
api, mv -
Constructor Summary
ConstructorsConstructorDescriptionLocalVariablesSorter(int access, String desc, org.objectweb.asm.MethodVisitor mv) -
Method Summary
Modifier and TypeMethodDescriptionprotected intnewLocal(int size) private intremap(int var) private intremap(int var, int size) voidvisitIincInsn(int var, int increment) voidvisitLocalVariable(String name, String desc, String signature, org.objectweb.asm.Label start, org.objectweb.asm.Label end, int index) voidvisitMaxs(int maxStack, int maxLocals) voidvisitVarInsn(int opcode, int var) Methods inherited from class org.objectweb.asm.MethodVisitor
visitAnnotableParameterCount, visitAnnotation, visitAnnotationDefault, visitAttribute, visitCode, visitEnd, visitFieldInsn, visitFrame, visitInsn, visitInsnAnnotation, visitIntInsn, visitInvokeDynamicInsn, visitJumpInsn, visitLabel, visitLdcInsn, visitLineNumber, visitLocalVariableAnnotation, visitLookupSwitchInsn, visitMethodInsn, visitMethodInsn, visitMultiANewArrayInsn, visitParameter, visitParameterAnnotation, visitTableSwitchInsn, visitTryCatchAnnotation, visitTryCatchBlock, visitTypeAnnotation, visitTypeInsn
-
Field Details
-
firstLocal
protected final int firstLocal -
state
-
-
Constructor Details
-
LocalVariablesSorter
-
LocalVariablesSorter
-
-
Method Details
-
visitVarInsn
public void visitVarInsn(int opcode, int var) - Overrides:
visitVarInsnin classorg.objectweb.asm.MethodVisitor
-
visitIincInsn
public void visitIincInsn(int var, int increment) - Overrides:
visitIincInsnin classorg.objectweb.asm.MethodVisitor
-
visitMaxs
public void visitMaxs(int maxStack, int maxLocals) - Overrides:
visitMaxsin classorg.objectweb.asm.MethodVisitor
-
visitLocalVariable
public void visitLocalVariable(String name, String desc, String signature, org.objectweb.asm.Label start, org.objectweb.asm.Label end, int index) - Overrides:
visitLocalVariablein classorg.objectweb.asm.MethodVisitor
-
newLocal
protected int newLocal(int size) -
remap
private int remap(int var, int size) -
remap
private int remap(int var)
-