Class TypeCreation

All Implemented Interfaces:
StackManipulation

@Enhance public class TypeCreation extends StackManipulation.AbstractBase
A stack manipulation for creating an undefined type on which a constructor is to be called.
  • Field Details

    • typeDescription

      private final TypeDescription typeDescription
      The type that is being created.
  • Constructor Details

    • TypeCreation

      protected TypeCreation(TypeDescription typeDescription)
      Constructs a new type creation.
      Parameters:
      typeDescription - The type to be created.
  • Method Details

    • of

      public static StackManipulation of(TypeDescription typeDescription)
      Creates a type creation for the given type.
      Parameters:
      typeDescription - The type to be created.
      Returns:
      A stack manipulation that represents the creation of the given type.
    • apply

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