codesimian
Class NumberStack.NeverEmpty

java.lang.Object
  extended by java.lang.Number
      extended by codesimian.NumberStack
          extended by codesimian.NumberStack.NeverEmpty
All Implemented Interfaces:
java.io.Serializable
Enclosing class:
NumberStack

public static class NumberStack.NeverEmpty
extends NumberStack

replaces pop() with peek() if pop() would empty the stack.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class codesimian.NumberStack
NumberStack.NeverEmpty
 
Field Summary
 
Fields inherited from class codesimian.NumberStack
stack
 
Constructor Summary
NumberStack.NeverEmpty(byte permanentStackBottom)
           
NumberStack.NeverEmpty(double permanentStackBottom)
           
NumberStack.NeverEmpty(float permanentStackBottom)
           
NumberStack.NeverEmpty(int permanentStackBottom)
           
NumberStack.NeverEmpty(long permanentStackBottom)
           
NumberStack.NeverEmpty(java.lang.Number permanentStackBottom)
           
NumberStack.NeverEmpty(short permanentStackBottom)
           
 
Method Summary
 java.lang.Number pop()
           
 boolean replaceBottom(java.lang.Number setIndexZeroToMe)
          This is the only way to replace the first element of the stack, because the stack may never be empty.
 
Methods inherited from class codesimian.NumberStack
byteValue, doubleValue, floatValue, intValue, longValue, peek, push, push, push, push, push, push, push, shortValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NumberStack.NeverEmpty

public NumberStack.NeverEmpty(java.lang.Number permanentStackBottom)

NumberStack.NeverEmpty

public NumberStack.NeverEmpty(byte permanentStackBottom)

NumberStack.NeverEmpty

public NumberStack.NeverEmpty(short permanentStackBottom)

NumberStack.NeverEmpty

public NumberStack.NeverEmpty(int permanentStackBottom)

NumberStack.NeverEmpty

public NumberStack.NeverEmpty(long permanentStackBottom)

NumberStack.NeverEmpty

public NumberStack.NeverEmpty(float permanentStackBottom)

NumberStack.NeverEmpty

public NumberStack.NeverEmpty(double permanentStackBottom)
Method Detail

pop

public java.lang.Number pop()
Overrides:
pop in class NumberStack

replaceBottom

public boolean replaceBottom(java.lang.Number setIndexZeroToMe)
This is the only way to replace the first element of the stack, because the stack may never be empty.