Class Advice.AdviceVisitor.WithExitAdvice

java.lang.Object
org.objectweb.asm.MethodVisitor
All Implemented Interfaces:
Advice.Dispatcher.RelocationHandler.Relocation
Direct Known Subclasses:
Advice.AdviceVisitor.WithExitAdvice.WithExceptionHandling, Advice.AdviceVisitor.WithExitAdvice.WithoutExceptionHandling
Enclosing class:
Advice.AdviceVisitor

protected abstract static class Advice.AdviceVisitor.WithExitAdvice extends Advice.AdviceVisitor
An advice visitor that applies exit advice.
  • Field Details

    • returnHandler

      protected final org.objectweb.asm.Label returnHandler
      Indicates the handler for the value returned by the advice method.
  • Constructor Details

    • WithExitAdvice

      protected WithExitAdvice(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, StackManipulation exceptionHandler, TypeDescription instrumentedType, MethodDescription instrumentedMethod, Advice.Dispatcher.Resolved.ForMethodEnter methodEnter, Advice.Dispatcher.Resolved.ForMethodExit methodExit, List<? extends TypeDescription> postMethodTypes, int writerFlags, int readerFlags)
      Creates an advice visitor that applies exit advice.
      Parameters:
      methodVisitor - The method visitor for the instrumented method.
      implementationContext - The implementation context to use.
      assigner - The assigner to use.
      exceptionHandler - The stack manipulation to apply within a suppression handler.
      instrumentedType - A description of the instrumented type.
      instrumentedMethod - A description of the instrumented method.
      methodEnter - The dispatcher to be used for method enter.
      methodExit - The dispatcher to be used for method exit.
      postMethodTypes - A list of virtual method arguments that are available after the instrumented method has completed.
      writerFlags - The ASM writer flags that were set.
      readerFlags - The ASM reader flags that were set.
  • Method Details

    • apply

      public void apply(org.objectweb.asm.MethodVisitor methodVisitor)
      Applies this relocator.
      Parameters:
      methodVisitor - The method visitor to use.
    • onVisitInsn

      protected void onVisitInsn(int opcode)
      Description copied from class: ExceptionTableSensitiveMethodVisitor
      Visits a simple instruction.
      Overrides:
      onVisitInsn in class ExceptionTableSensitiveMethodVisitor
      Parameters:
      opcode - The opcode of the instruction.
    • onUserEnd

      protected void onUserEnd()
      Description copied from class: Advice.AdviceVisitor
      Writes the advice for completing the instrumented method.
      Specified by:
      onUserEnd in class Advice.AdviceVisitor
    • onUserReturn

      protected abstract void onUserReturn()
      Invoked after the user method has returned.
    • onExitAdviceReturn

      protected abstract void onExitAdviceReturn()
      Invoked after the exit advice method has returned.