protected static class Advice.StackMapFrameHandler.Default.Trivial extends Advice.StackMapFrameHandler.Default
Advice.StackMapFrameHandler.Default.ForAdvice, Advice.StackMapFrameHandler.Default.Initialization, Advice.StackMapFrameHandler.Default.TranslationMode, Advice.StackMapFrameHandler.Default.Trivial, Advice.StackMapFrameHandler.Default.WithPreservedArguments
Advice.StackMapFrameHandler.Default, Advice.StackMapFrameHandler.ForInstrumentedMethod, Advice.StackMapFrameHandler.ForPostProcessor, Advice.StackMapFrameHandler.NoOp
currentFrameDivergence, EMPTY, expandFrames, initialTypes, instrumentedMethod, instrumentedType, latentTypes, postMethodTypes, preMethodTypes
Modifier | Constructor and Description |
---|---|
protected |
Trivial(TypeDescription instrumentedType,
MethodDescription instrumentedMethod,
List<? extends TypeDescription> latentTypes,
boolean expandFrames)
Creates a new stack map frame handler that applies a trivial translation for the instrumented method's stack map frames.
|
Modifier and Type | Method and Description |
---|---|
Advice.StackMapFrameHandler.ForAdvice |
bindExit(MethodDescription.TypeToken typeToken)
Binds this metadata handler for the exit advice.
|
void |
injectCompletionFrame(MethodVisitor methodVisitor)
Injects a frame indicating the completion of the currently handled method, i.e.
|
void |
injectExceptionFrame(MethodVisitor methodVisitor)
Injects a frame indicating the beginning of an exception handler for the currently handled method.
|
void |
injectInitializationFrame(MethodVisitor methodVisitor)
Injects a frame after initialization if any initialization is performed.
|
void |
injectPostCompletionFrame(MethodVisitor methodVisitor)
Injects a frame indicating the completion of the currently handled method, i.e.
|
void |
injectReturnFrame(MethodVisitor methodVisitor)
Injects a frame indicating the beginning of a return value handler for the currently handled method.
|
void |
injectStartFrame(MethodVisitor methodVisitor)
Injects a frame before executing the instrumented method.
|
void |
translateFrame(MethodVisitor methodVisitor,
int type,
int localVariableLength,
Object[] localVariable,
int stackSize,
Object[] stack)
Translates a frame.
|
bindEnter, getReaderHint, injectFullFrame, of, translateFrame
protected Trivial(TypeDescription instrumentedType, MethodDescription instrumentedMethod, List<? extends TypeDescription> latentTypes, boolean expandFrames)
instrumentedType
- The instrumented type.instrumentedMethod
- The instrumented method.latentTypes
- A list of virtual arguments that are available after the enter advice method is executed.expandFrames
- true
if the meta data handler is expected to expand its frames.public void translateFrame(MethodVisitor methodVisitor, int type, int localVariableLength, @MaybeNull Object[] localVariable, int stackSize, @MaybeNull Object[] stack)
methodVisitor
- 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 Advice.StackMapFrameHandler.ForAdvice bindExit(MethodDescription.TypeToken typeToken)
typeToken
- The type token representing the advice method.public void injectReturnFrame(MethodVisitor methodVisitor)
methodVisitor
- The method visitor onto which to apply the stack map frame.public void injectExceptionFrame(MethodVisitor methodVisitor)
methodVisitor
- The method visitor onto which to apply the stack map frame.public void injectCompletionFrame(MethodVisitor methodVisitor)
methodVisitor
- The method visitor onto which to apply the stack map frame.public void injectPostCompletionFrame(MethodVisitor methodVisitor)
methodVisitor
- The method visitor onto which to apply the stack map frame.public void injectInitializationFrame(MethodVisitor methodVisitor)
methodVisitor
- The method visitor to write any frames to.public void injectStartFrame(MethodVisitor methodVisitor)
methodVisitor
- The method visitor to write any frames to.Copyright © 2014–2025. All rights reserved.