
/**
 * Write a description of class Driver here.
 * 
 * @author John Paxton
 * @version 1.0
 */

public class Driver
{
    public static void main (String [] args)
    {
        SingleLinkedList myList = new SingleLinkedList();
        
        myList.makeEmpty();
        
        myList.print();
        myList.printReverse();
        myList.insert(new Name("John", "Paxton"), 0);
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Anne", "DeFrance"), 1);
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Hunter", "Lloyd"), 1);
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Denbigh", "Starkey"), 4); // error
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Denbigh", "Starkey"), 3);
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Brendan", "Mumey"), 0);
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Binhai", "Zhu"), 2);
        myList.print();
        myList.printReverse();
        
        System.out.println(myList.remove(6));
        myList.print();
        System.out.println(myList.remove(-1));
        myList.print();
        System.out.println(myList.remove(0));
        myList.print();
        System.out.println(myList.remove(2));
        myList.print();
        System.out.println(myList.remove(3));
        myList.print();
        myList.printReverse();
        
        myList.makeEmpty();
        
        myList.insert(new Name("John", "Paxton"));
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Anne", "Defrance"));
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Hunter", "Lloyd"));
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Denbigh", "Starkey"));
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Brendan", "Mumey"));
        myList.print();
        myList.printReverse();
        myList.insert(new Name("Binhai", "Zhu"));
        myList.print();
        myList.printReverse();
    }
}
