Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.apache.xml.utils
Class BoolStack  view BoolStack download BoolStack.java

java.lang.Object
  extended byorg.apache.xml.utils.BoolStack
All Implemented Interfaces:
java.lang.Cloneable

public final class BoolStack
extends java.lang.Object
implements java.lang.Cloneable

Simple stack for boolean values.


Field Summary
private  int m_allocatedSize
          Array size allocated
private  int m_index
          Index into the array of booleans
private  boolean[] m_values
          Array of boolean values
 
Constructor Summary
BoolStack()
          Default constructor.
BoolStack(int size)
          Construct a IntVector, using the given block size.
 
Method Summary
 void clear()
          Clears the stack.
 java.lang.Object clone()
          This method may be called to create a new copy of the Object.
private  void grow()
          Grows the size of 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, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_values

private boolean[] m_values
Array of boolean values


m_allocatedSize

private int m_allocatedSize
Array size allocated


m_index

private int m_index
Index into the array of booleans

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.

Method Detail

size

public final int size()
Get the 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.


pop

public final boolean pop()
Removes the object at the top of this stack and returns that object as the value of this function.


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.


setTop

public final void setTop(boolean b)
Set the item 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.


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.


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.


isEmpty

public boolean isEmpty()
Tests if this stack is empty.


grow

private void grow()
Grows the size of the stack


clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Description copied from class: java.lang.Object
This method may be called to create a new copy of the Object. The typical behavior is as follows:
  • o == o.clone() is false
  • o.getClass() == o.clone().getClass() is true
  • o.equals(o) is true

However, these are not strict requirements, and may be violated if necessary. Of the three requirements, the last is the most commonly violated, particularly if the subclass does not override Object.equals(Object)>Object.equals(Object) 55 .

If the Object you call clone() on does not implement java.lang.Cloneable (which is a placeholder interface), then a CloneNotSupportedException is thrown. Notice that Object does not implement Cloneable; this method exists as a convenience for subclasses that do.

Object's implementation of clone allocates space for the new Object using the correct class, without calling any constructors, and then fills in all of the new field values with the old field values. Thus, it is a shallow copy. However, subclasses are permitted to make a deep copy.

All array types implement Cloneable, and override this method as follows (it should never fail):

 public Object clone()
 {
   try
     {
       super.clone();
     }
   catch (CloneNotSupportedException e)
     {
       throw new InternalError(e.getMessage());
     }
 }