Class StackManipulation.Size

  • Enclosing interface:
    StackManipulation

    public static class StackManipulation.Size
    extends java.lang.Object
    A description of the size change that is imposed by some StackManipulation.
    • Constructor Summary

      Constructors 
      Constructor Description
      Size​(int sizeImpact, int maximalSize)
      Creates an immutable descriptor of the size change that is implied by some stack manipulation.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      StackManipulation.Size aggregate​(StackManipulation.Size other)
      Concatenates this size representation with another size representation in order to represent the size change that is represented by both alterations of the operand stack size.
      int getMaximalSize()
      Returns the maximal interim size of the operand stack that is represented by this instance.
      int getSizeImpact()
      Returns the size change on the operand stack that is represented by this instance.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Size

        public Size​(int sizeImpact,
                    int maximalSize)
        Creates an immutable descriptor of the size change that is implied by some stack manipulation.
        Parameters:
        sizeImpact - The change of the size of the operand stack that is implied by some stack manipulation.
        maximalSize - The maximal stack size that is required for executing this stack manipulation. Should never be negative number.
    • Method Detail

      • getSizeImpact

        public int getSizeImpact()
        Returns the size change on the operand stack that is represented by this instance.
        Returns:
        The size change on the operand stack that is represented by this instance.
      • getMaximalSize

        public int getMaximalSize()
        Returns the maximal interim size of the operand stack that is represented by this instance.
        Returns:
        The maximal interim size of the operand stack that is represented by this instance.
      • aggregate

        public StackManipulation.Size aggregate​(StackManipulation.Size other)
        Concatenates this size representation with another size representation in order to represent the size change that is represented by both alterations of the operand stack size.
        Parameters:
        other - The other size representation.
        Returns:
        A new size representation representing both stack size requirements.