org.apache.xml.serializer.utils

## Class BoolStack

- java.lang.Object
- - org.apache.xml.serializer.utils.BoolStack

    public final class BoolStack
    extends java.lang.Object

Simple stack for boolean values. This class is a copy of the one in org.apache.xml.utils. It exists to cut the serializers dependancy on that package. A minor changes from that package are: doesn't implement Clonable This class is not a public API, it is only public because it is used in org.apache.xml.serializer.

Usage:
  **For internal use only**

### Constructor Summary

Constructors
Constructor and Description
`BoolStack()` Default constructor.
`BoolStack(int size)` Construct a IntVector, using the given block size.

### Method Summary

Methods
`void` `clear()` Clears the stack.
`boolean` `isEmpty()` Tests if this stack is empty.
`boolean` `peek()` Looks at the object at the top of this stack without removing it from the stack.
`boolean` `peekOrFalse()` Looks at the object at the top of this stack without removing it from the stack.
`boolean` `peekOrTrue()` Looks at the object at the top of this stack without removing it from the stack.
`boolean` `pop()` Removes the object at the top of this stack and returns that object as the value of this function.
`boolean` `popAndTop()` Removes the object at the top of this stack and returns the next object at the top as the value of this function.
`boolean` `push(boolean val)` Pushes an item onto the top of this stack.
`void` `setTop(boolean b)` Set the item at the top of this stack
`int` `size()` Get the length of the list.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### BoolStack

    public BoolStack()

Default constructor. Note that the default block size is very small, for small lists.

#### BoolStack

    public BoolStack(int size)

Construct a IntVector, using the given block size.

Parameters:
  `size` - array size to allocate

### Method Detail

#### size

    public final int size()

Get the length of the list.

Returns:
  Current length of the list

#### clear

    public final void clear()

Clears the stack.

#### push

    public final boolean push(boolean val)

Pushes an item onto the top of this stack.

Parameters:
  `val` - the boolean to be pushed onto this stack.
Returns:
  the `item` argument.

#### pop

    public final boolean 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.
Throws:
  `EmptyStackException` - if this stack is empty.

#### popAndTop

    public final boolean popAndTop()

Removes the object at the top of this stack and returns the next object at the top as the value of this function.

Returns:
  Next object to the top or false if none there

#### setTop

    public final void setTop(boolean b)

Set the item at the top of this stack

Parameters:
  `b` - Object to set at the top of this stack

#### peek

    public final boolean 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.

#### peekOrFalse

    public final boolean peekOrFalse()

Looks at the object at the top of this stack without removing it from the stack. If the stack is empty, it returns false.

Returns:
  the object at the top of this stack.

#### peekOrTrue

    public final boolean peekOrTrue()

Looks at the object at the top of this stack without removing it from the stack. If the stack is empty, it returns true.

Returns:
  the object at the top of this stack.

#### isEmpty

    public boolean isEmpty()

Tests if this stack is empty.

Returns:
  `true` if this stack is empty; `false` otherwise.