Package net.bytebuddy.asm
Class Advice.Dispatcher.Inlining.Resolved.AdviceMethodInliner.ExceptionTableSubstitutor
- java.lang.Object
-
- org.objectweb.asm.MethodVisitor
-
- net.bytebuddy.asm.Advice.Dispatcher.Inlining.Resolved.AdviceMethodInliner.ExceptionTableSubstitutor
-
- Enclosing class:
- Advice.Dispatcher.Inlining.Resolved.AdviceMethodInliner
protected class Advice.Dispatcher.Inlining.Resolved.AdviceMethodInliner.ExceptionTableSubstitutor extends org.objectweb.asm.MethodVisitorA label substitutor allows to visit an advice method a second time after the exception handlers were already written. Doing so, this visitor substitutes all labels that were already created during the first visit to keep the mapping consistent. It is not required to resolve labels for non-code instructions as meta information is not propagated to the target method visitor for advice code.
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedExceptionTableSubstitutor(org.objectweb.asm.MethodVisitor methodVisitor)Creates a label substitor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidvisitJumpInsn(int opcode, org.objectweb.asm.Label label)voidvisitLabel(org.objectweb.asm.Label label)voidvisitLookupSwitchInsn(org.objectweb.asm.Label defaultOption, int[] keys, org.objectweb.asm.Label[] label)voidvisitTableSwitchInsn(int minimum, int maximum, org.objectweb.asm.Label defaultOption, org.objectweb.asm.Label... label)org.objectweb.asm.AnnotationVisitorvisitTryCatchAnnotation(int typeReference, org.objectweb.asm.TypePath typePath, java.lang.String descriptor, boolean visible)voidvisitTryCatchBlock(org.objectweb.asm.Label start, org.objectweb.asm.Label end, org.objectweb.asm.Label handler, java.lang.String type)-
Methods inherited from class org.objectweb.asm.MethodVisitor
visitAnnotableParameterCount, visitAnnotation, visitAnnotationDefault, visitAttribute, visitCode, visitEnd, visitFieldInsn, visitFrame, visitIincInsn, visitInsn, visitInsnAnnotation, visitIntInsn, visitInvokeDynamicInsn, visitLdcInsn, visitLineNumber, visitLocalVariable, visitLocalVariableAnnotation, visitMaxs, visitMethodInsn, visitMethodInsn, visitMultiANewArrayInsn, visitParameter, visitParameterAnnotation, visitTypeAnnotation, visitTypeInsn, visitVarInsn
-
-
-
-
Method Detail
-
visitTryCatchBlock
public void visitTryCatchBlock(org.objectweb.asm.Label start, org.objectweb.asm.Label end, org.objectweb.asm.Label handler, java.lang.String type)- Overrides:
visitTryCatchBlockin classorg.objectweb.asm.MethodVisitor
-
visitTryCatchAnnotation
public org.objectweb.asm.AnnotationVisitor visitTryCatchAnnotation(int typeReference, org.objectweb.asm.TypePath typePath, java.lang.String descriptor, boolean visible)- Overrides:
visitTryCatchAnnotationin classorg.objectweb.asm.MethodVisitor
-
visitLabel
public void visitLabel(org.objectweb.asm.Label label)
- Overrides:
visitLabelin classorg.objectweb.asm.MethodVisitor
-
visitJumpInsn
public void visitJumpInsn(int opcode, org.objectweb.asm.Label label)- Overrides:
visitJumpInsnin classorg.objectweb.asm.MethodVisitor
-
visitTableSwitchInsn
public void visitTableSwitchInsn(int minimum, int maximum, org.objectweb.asm.Label defaultOption, org.objectweb.asm.Label... label)- Overrides:
visitTableSwitchInsnin classorg.objectweb.asm.MethodVisitor
-
visitLookupSwitchInsn
public void visitLookupSwitchInsn(org.objectweb.asm.Label defaultOption, int[] keys, org.objectweb.asm.Label[] label)- Overrides:
visitLookupSwitchInsnin classorg.objectweb.asm.MethodVisitor
-
-