protected class Advice.StackMapFrameHandler.Default.ForAdvice extends Object implements Advice.StackMapFrameHandler.ForAdvice
Advice.StackMapFrameHandler.Default, Advice.StackMapFrameHandler.ForAdvice, Advice.StackMapFrameHandler.ForInstrumentedMethod, Advice.StackMapFrameHandler.ForPostProcessor, Advice.StackMapFrameHandler.NoOp| Modifier and Type | Field and Description | 
|---|---|
| protected MethodDescription.InDefinedShape | adviceMethodThe method description for which frames are translated. | 
| protected List<? extends TypeDescription> | endTypesThe types provided after execution of the advice code. | 
| protected List<? extends TypeDescription> | startTypesThe types provided before execution of the advice code. | 
| protected Advice.StackMapFrameHandler.Default.TranslationMode | translationModeThe translation mode to apply for this advice method. | 
| Modifier | Constructor and Description | 
|---|---|
| protected  | ForAdvice(MethodDescription.InDefinedShape adviceMethod,
         List<? extends TypeDescription> startTypes,
         List<? extends TypeDescription> intermediateTypes,
         List<? extends TypeDescription> endTypes,
         Advice.StackMapFrameHandler.Default.TranslationMode translationMode,
         Advice.StackMapFrameHandler.Default.Initialization initialization)Creates a new meta data handler for an advice method. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | injectCompletionFrame(org.objectweb.asm.MethodVisitor methodVisitor)Injects a frame indicating the completion of the currently handled method, i.e. | 
| void | injectExceptionFrame(org.objectweb.asm.MethodVisitor methodVisitor)Injects a frame indicating the beginning of an exception handler for the currently handled method. | 
| void | injectIntermediateFrame(org.objectweb.asm.MethodVisitor methodVisitor,
                       List<? extends TypeDescription> stack)Injects a frame that represents the current state. | 
| void | injectReturnFrame(org.objectweb.asm.MethodVisitor methodVisitor)Injects a frame indicating the beginning of a return value handler for the currently handled method. | 
| void | translateFrame(org.objectweb.asm.MethodVisitor methodVisitor,
              int type,
              int localVariableLength,
              Object[] localVariable,
              int stackSize,
              Object[] stack)Translates a frame. | 
protected final MethodDescription.InDefinedShape adviceMethod
protected final List<? extends TypeDescription> startTypes
protected final List<? extends TypeDescription> endTypes
protected final Advice.StackMapFrameHandler.Default.TranslationMode translationMode
Advice.StackMapFrameHandler.Default.TranslationMode.ENTER or Advice.StackMapFrameHandler.Default.TranslationMode.EXIT.protected ForAdvice(MethodDescription.InDefinedShape adviceMethod, List<? extends TypeDescription> startTypes, List<? extends TypeDescription> intermediateTypes, List<? extends TypeDescription> endTypes, Advice.StackMapFrameHandler.Default.TranslationMode translationMode, Advice.StackMapFrameHandler.Default.Initialization initialization)
adviceMethod - The method description for which frames are translated.startTypes - The types provided before execution of the advice code.intermediateTypes - The types that are given post execution of the advice.endTypes - The types provided after execution of the advice code.translationMode - The translation mode to apply for this advice method. Should be
                          either Advice.StackMapFrameHandler.Default.TranslationMode.ENTER or Advice.StackMapFrameHandler.Default.TranslationMode.EXIT.initialization - The initialization to apply when resolving a reference to the instance on which a non-static method is invoked.public void translateFrame(org.objectweb.asm.MethodVisitor methodVisitor,
                           int type,
                           int localVariableLength,
                           @MaybeNull
                           Object[] localVariable,
                           int stackSize,
                           @MaybeNull
                           Object[] stack)
translateFrame in interface Advice.StackMapFrameHandlermethodVisitor - The method visitor to write the frame to.type - The frame's type.localVariableLength - The local variable length.localVariable - An array containing the types of the current local variables.stackSize - The size of the operand stack.stack - An array containing the types of the current operand stack.public void injectReturnFrame(org.objectweb.asm.MethodVisitor methodVisitor)
injectReturnFrame in interface Advice.StackMapFrameHandlermethodVisitor - The method visitor onto which to apply the stack map frame.public void injectExceptionFrame(org.objectweb.asm.MethodVisitor methodVisitor)
injectExceptionFrame in interface Advice.StackMapFrameHandlermethodVisitor - The method visitor onto which to apply the stack map frame.public void injectCompletionFrame(org.objectweb.asm.MethodVisitor methodVisitor)
injectCompletionFrame in interface Advice.StackMapFrameHandlermethodVisitor - The method visitor onto which to apply the stack map frame.public void injectIntermediateFrame(org.objectweb.asm.MethodVisitor methodVisitor,
                                    List<? extends TypeDescription> stack)
injectIntermediateFrame in interface Advice.StackMapFrameHandler.ForPostProcessormethodVisitor - The method visitor onto which to apply the stack map frame.stack - A list of types that are currently on the stack.Copyright © 2014–2021. All rights reserved.