Class StackManipulation.Size

    • 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.