jdsl
Class DumbIteratorNodeSequence

java.lang.Object
  |
  +--jdsl.NodeSequence
        |
        +--jdsl.DumbIteratorNodeSequence

public class DumbIteratorNodeSequence
extends NodeSequence

This class implements the sequence interface using a double-linked list of nodes.


Constructor Summary
DumbIteratorNodeSequence()
           
 
Method Summary
protected  jdsl.NSNode checkPosition(Position p)
           
protected  void checkRank(int rank)
           
 java.util.Iterator elements()
           
 Position insertAfter(Position p, java.lang.Object element)
           
 Position insertAtRank(int rank, java.lang.Object element)
           
 Position insertBefore(Position p, java.lang.Object element)
           
 Position insertFirst(java.lang.Object element)
           
 Position insertLast(java.lang.Object element)
           
 Container newContainer()
           
 java.util.Iterator positions()
           
 java.lang.Object remove(Position p)
           
 java.lang.Object removeAfter(Position p)
           
 java.lang.Object removeAtRank(int i)
           
 java.lang.Object removeBefore(Position p)
           
 java.lang.Object removeFirst()
           
 java.lang.Object removeLast()
           
 java.lang.Object replace(Position p, java.lang.Object element)
           
 void swap(Position a, Position b)
           
 
Methods inherited from class jdsl.NodeSequence
after, atRank, before, first, isEmpty, last, rankOf, size
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DumbIteratorNodeSequence

public DumbIteratorNodeSequence()
Method Detail

insertBefore

public Position insertBefore(Position p,
                             java.lang.Object element)
Overrides:
insertBefore in class NodeSequence

insertAfter

public Position insertAfter(Position p,
                            java.lang.Object element)
Overrides:
insertAfter in class NodeSequence

insertFirst

public Position insertFirst(java.lang.Object element)
Overrides:
insertFirst in class NodeSequence

insertLast

public Position insertLast(java.lang.Object element)
Overrides:
insertLast in class NodeSequence

insertAtRank

public Position insertAtRank(int rank,
                             java.lang.Object element)
Overrides:
insertAtRank in class NodeSequence

remove

public java.lang.Object remove(Position p)
Overrides:
remove in class NodeSequence

replace

public java.lang.Object replace(Position p,
                                java.lang.Object element)
Overrides:
replace in class NodeSequence

swap

public void swap(Position a,
                 Position b)
Overrides:
swap in class NodeSequence

removeAtRank

public java.lang.Object removeAtRank(int i)
Overrides:
removeAtRank in class NodeSequence

removeBefore

public java.lang.Object removeBefore(Position p)
Overrides:
removeBefore in class NodeSequence

removeAfter

public java.lang.Object removeAfter(Position p)
Overrides:
removeAfter in class NodeSequence

removeFirst

public java.lang.Object removeFirst()
Overrides:
removeFirst in class NodeSequence

removeLast

public java.lang.Object removeLast()
Overrides:
removeLast in class NodeSequence

newContainer

public Container newContainer()
Overrides:
newContainer in class NodeSequence

elements

public java.util.Iterator elements()
Overrides:
elements in class NodeSequence

positions

public java.util.Iterator positions()
Overrides:
positions in class NodeSequence

checkPosition

protected jdsl.NSNode checkPosition(Position p)
                             throws InvalidPositionException
Overrides:
checkPosition in class NodeSequence

checkRank

protected void checkRank(int rank)
                  throws BoundaryViolationException
Overrides:
checkRank in class NodeSequence