Package org.apache.xml.utils
Class BoolStack
java.lang.Object
org.apache.xml.utils.BoolStack
- All Implemented Interfaces:
Cloneable
public final class BoolStack extends Object implements Cloneable
Simple stack for boolean values.
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description voidclear()Clears the stack.Objectclone()Creates and returns a copy of thisObject.booleanisEmpty()Tests if this stack is empty.booleanpeek()Looks at the object at the top of this stack without removing it from the stack.booleanpeekOrFalse()Looks at the object at the top of this stack without removing it from the stack.booleanpeekOrTrue()Looks at the object at the top of this stack without removing it from the stack.booleanpop()Removes the object at the top of this stack and returns that object as the value of this function.booleanpopAndTop()Removes the object at the top of this stack and returns the next object at the top as the value of this function.booleanpush(boolean val)Pushes an item onto the top of this stack.voidsetTop(boolean b)Set the item at the top of this stackintsize()Get the length of the list.
-
Constructor Details
-
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 Details
-
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
itemargument.
-
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:
trueif this stack is empty;falseotherwise.
-
clone
Description copied from class:ObjectCreates and returns a copy of thisObject. The default implementation returns a so-called "shallow" copy: It creates a new instance of the same class and then copies the field values (including object references) from this instance to the new instance. A "deep" copy, in contrast, would also recursively clone nested objects. A subclass that needs to implement this kind of cloning should callsuper.clone()to create the new instance and then create deep copies of the nested, mutable objects.- Overrides:
clonein classObject- Returns:
- a copy of this object.
- Throws:
CloneNotSupportedException- if this object's class does not implement theCloneableinterface.
-