protected static class Advice.Dispatcher.Inlining.CodeTranslationVisitor.ForMethodEnter extends Advice.Dispatcher.Inlining.CodeTranslationVisitor
Advice.Dispatcher.Inlining.CodeTranslationVisitor.ForMethodEnter, Advice.Dispatcher.Inlining.CodeTranslationVisitor.ForMethodExit
adviceMethod, endOfMethod, implementationContext, instrumentedMethod, methodSizeHandler, methodVisitor, stackMapFrameHandler
api, mv
Modifier | Constructor and Description |
---|---|
protected |
ForMethodEnter(MethodVisitor methodVisitor,
Implementation.Context implementationContext,
Advice.MethodSizeHandler.ForAdvice methodSizeHandler,
Advice.StackMapFrameHandler.ForAdvice stackMapFrameHandler,
MethodDescription instrumentedMethod,
MethodDescription.InDefinedShape adviceMethod,
Map<Integer,Advice.Dispatcher.OffsetMapping.Target> offsetMappings,
Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler)
Creates a code translation visitor for translating exit advice.
|
Modifier and Type | Method and Description |
---|---|
protected int |
adjust(int offset)
Adjusts the offset of a variable instruction within the advice method such that no arguments to
the instrumented method are overridden.
|
void |
onDefaultValue(MethodVisitor methodVisitor)
Instructs this return value producer to assure the production of a default value for the return type of the currently handled method.
|
protected void |
onMethodReturn()
Invoked after returning from the advice method.
|
String |
toString() |
void |
visitInsn(int opcode) |
propagateHandler, visitAnnotation, visitAnnotationDefault, visitAttribute, visitCode, visitEnd, visitFrame, visitIincInsn, visitMaxs, visitParameter, visitParameterAnnotation, visitTypeAnnotation, visitVarInsn
visitFieldInsn, visitInsnAnnotation, visitIntInsn, visitInvokeDynamicInsn, visitJumpInsn, visitLabel, visitLdcInsn, visitLineNumber, visitLocalVariable, visitLocalVariableAnnotation, visitLookupSwitchInsn, visitMethodInsn, visitMethodInsn, visitMultiANewArrayInsn, visitTableSwitchInsn, visitTryCatchAnnotation, visitTryCatchBlock, visitTypeInsn
protected ForMethodEnter(MethodVisitor methodVisitor, Implementation.Context implementationContext, Advice.MethodSizeHandler.ForAdvice methodSizeHandler, Advice.StackMapFrameHandler.ForAdvice stackMapFrameHandler, MethodDescription instrumentedMethod, MethodDescription.InDefinedShape adviceMethod, Map<Integer,Advice.Dispatcher.OffsetMapping.Target> offsetMappings, Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler)
methodVisitor
- A method visitor for writing the instrumented method's byte code.implementationContext
- The implementation context to use.methodSizeHandler
- A handler for computing the method size requirements.stackMapFrameHandler
- A handler for translating and injecting stack map frames.instrumentedMethod
- The instrumented method.adviceMethod
- The advice method.offsetMappings
- A mapping of offsets to resolved target offsets in the instrumented method.suppressionHandler
- The suppression handler to use.public void visitInsn(int opcode)
visitInsn
in class Advice.Dispatcher.Inlining.CodeTranslationVisitor
protected int adjust(int offset)
Advice.Dispatcher.Inlining.CodeTranslationVisitor
adjust
in class Advice.Dispatcher.Inlining.CodeTranslationVisitor
offset
- The original offset.public void onDefaultValue(MethodVisitor methodVisitor)
Advice.Dispatcher.SuppressionHandler.ReturnValueProducer
methodVisitor
- The method visitor to write the default value to.protected void onMethodReturn()
Advice.Dispatcher.Inlining.CodeTranslationVisitor
onMethodReturn
in class Advice.Dispatcher.Inlining.CodeTranslationVisitor
Copyright © 2014–2017. All rights reserved.