in scala.collection.immutable
class Stack

class Stack [ A ]
extends java.lang.Object
with Seq
with ScalaObject
This class implements immutable stacks using a list-based data structure. Instances of Stack represent empty stacks; they can be either created by calling the constructor directly, or by applying the function Stack.Empty.
author:
Matthias Zenger
version:
1.0, 10/07/2003

Constructor Summary
def this



Class Summary
protected class Node [ A <: B ]



Def Summary
def + [ A <: B ] ( elem : B ) : Stack
Push an element on the stack.
def + [ A <: B ] ( elems : Iterable ) : Stack
Push all elements provided by the given iterable object onto the stack. The last element returned by the iterable object will be on top of the new stack.
def apply ( n : scala.Int ) : A
Returns the n-th element of this stack. The top element has index 0, elements below are indexed with increasing numbers.
def elements : Iterator
Returns an iterator over all elements on the stack. The iterator issues elements in the reversed order they were inserted into the stack (LIFO order).
override def equals ( obj : scala.Any ) : scala.Boolean
Compares this stack with the given object.
override def hashCode : scala.Int
Returns the hash code for this stack.
def isEmpty : scala.Boolean
Checks if this stack is empty.
def length : scala.Int
Returns the size of this stack.
def pop : Stack
Removes the top element from the stack.
def push [ A <: B ] ( elems : scala.<repeated> ) : Stack
Push a sequence of elements onto the stack. The last element of the sequence will be on top of the new stack.
override def stringPrefix : java.lang.String
Redefines the prefix of the string representation.
override def toList : List
Creates a list of all stack elements in LIFO order.
def top : A
Returns the top element of the stack. An error is signaled if there is no element on the stack.


Constructor Detail
def this

Def Detail
def + [ A <: B ]( elem : B ) : Stack
Push an element on the stack.
param:
elem the element to push on the stack.
return:
the stack with the new element on top.

def + [ A <: B ]( elems : Iterable ) : Stack
Push all elements provided by the given iterable object onto the stack. The last element returned by the iterable object will be on top of the new stack.
param:
elems the iterable object.
return:
the stack with the new elements on top.

def apply ( n : scala.Int ) : A
Returns the n-th element of this stack. The top element has index 0, elements below are indexed with increasing numbers.
param:
n the index number.
return:
the n-th element on the stack.

def elements : Iterator
Returns an iterator over all elements on the stack. The iterator issues elements in the reversed order they were inserted into the stack (LIFO order).
return:
an iterator over all stack elements.

override def equals ( obj : scala.Any ) : scala.Boolean
Compares this stack with the given object.
return:
true, iff the two stacks are equal; i.e. they contain the same elements in the same order.

override def hashCode : scala.Int
Returns the hash code for this stack.
return:
the hash code of the stack.

def isEmpty : scala.Boolean
Checks if this stack is empty.
return:
true, iff there is no element on the stack.

def length : scala.Int
Returns the size of this stack.
return:
the stack size.

def pop : Stack
Removes the top element from the stack.
return:
the new stack without the former top element.

def push [ A <: B ]( elems : scala.<repeated> ) : Stack
Push a sequence of elements onto the stack. The last element of the sequence will be on top of the new stack.
param:
elems the element sequence.
return:
the stack with the new elements on top.

override def stringPrefix : java.lang.String
Redefines the prefix of the string representation.

override def toList : List
Creates a list of all stack elements in LIFO order.
return:
the created list.

def top : A
Returns the top element of the stack. An error is signaled if there is no element on the stack.
return:
the top element.