Class PrimitiveNarrowingDelegate.NarrowingStackManipulation

java.lang.Object
net.bytebuddy.implementation.bytecode.StackManipulation.AbstractBase
net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveNarrowingDelegate.NarrowingStackManipulation
All Implemented Interfaces:
StackManipulation
Enclosing class:
PrimitiveNarrowingDelegate

@Enhance protected static class PrimitiveNarrowingDelegate.NarrowingStackManipulation extends StackManipulation.AbstractBase
A stack manipulation that narrows a primitive type into a smaller primitive type.
  • Field Details

    • conversionOpcodes

      private final int[] conversionOpcodes
      The opcode for executing the conversion.
    • size

      private final StackManipulation.Size size
      The size change of applying the conversion.
  • Constructor Details

    • NarrowingStackManipulation

      protected NarrowingStackManipulation(int[] conversionOpcodes, StackManipulation.Size size)
      Creates a new narrowing stack manipulation.
      Parameters:
      conversionOpcodes - The opcodes for executing the conversion.
      size - The size change of applying the conversion.
  • Method Details

    • apply

      public StackManipulation.Size apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context context)
      Applies the stack manipulation that is described by this instance.
      Parameters:
      methodVisitor - The method visitor used to write the method implementation to.
      context - The context of the current implementation.
      Returns:
      The changes to the size of the operand stack that are implied by this stack manipulation.