Class IntStack

java.lang.Object
org.apache.xml.utils.IntVector
org.apache.xml.utils.IntStack
All Implemented Interfaces:
Cloneable

public class IntStack extends IntVector
Implement a stack of simple integers. %OPT% This is currently based on IntVector, which permits fast acess but pays a heavy recopying penalty if/when its size is increased. If we expect deep stacks, we should consider a version based on ChunkedIntVector.
  • Constructor Details

    • IntStack

      public IntStack()
      Default constructor. Note that the default block size is very small, for small lists.
    • IntStack

      public IntStack(int blocksize)
      Construct a IntVector, using the given block size.
      Parameters:
      blocksize - Size of block to allocate
    • IntStack

      public IntStack(IntStack v)
      Copy constructor for IntStack
      Parameters:
      v - IntStack to copy
  • Method Details

    • push

      public int push(int i)
      Pushes an item onto the top of this stack.
      Parameters:
      i - the int to be pushed onto this stack.
      Returns:
      the item argument.
    • pop

      public final int pop()
      Removes the object at the top of this stack and returns that object as the value of this function.
      Returns:
      The object at the top of this stack.
    • quickPop

      public final void quickPop(int n)
      Quickly pops a number of items from the stack.
    • peek

      public final int peek()
      Looks at the object at the top of this stack without removing it from the stack.
      Returns:
      the object at the top of this stack.
      Throws:
      EmptyStackException - if this stack is empty.
    • peek

      public int peek(int n)
      Looks at the object at the position the stack counting down n items.
      Parameters:
      n - The number of items down, indexed from zero.
      Returns:
      the object at n items down.
      Throws:
      EmptyStackException - if this stack is empty.
    • setTop

      public void setTop(int val)
      Sets an object at a the top of the statck
      Parameters:
      val - object to set at the top
      Throws:
      EmptyStackException - if this stack is empty.
    • empty

      public boolean empty()
      Tests if this stack is empty.
      Returns:
      true if this stack is empty; false otherwise.
      Since:
      JDK1.0
    • search

      public int search(int o)
      Returns where an object is on this stack.
      Parameters:
      o - the desired object.
      Returns:
      the distance from the top of the stack where the object is] located; the return value -1 indicates that the object is not on the stack.
      Since:
      JDK1.0
    • clone

      public Object clone() throws CloneNotSupportedException
      Returns clone of current IntStack
      Overrides:
      clone in class IntVector
      Returns:
      clone of current IntStack
      Throws:
      CloneNotSupportedException