// Justin C. Miller
// University of Wisconsin Oshkosh
// Made for: http://www.geocities.com/neonprimetime.geo/index.html
// Date: 2001
// Borland Builder 4.0
//
// Link List Generic File
//

#ifndef LLIST_H
#define LLIST_H

#include 
#include 

template 
class LList ;		// forward reference

template 
class Node
{
	friend class LList ;
	protected:
		T * data ;
		Node * next ;
	public:
		Node() {}
		~Node() { delete data ; }
};

template 
class LList
{
	protected:
		Node * head ;
		Node * cur ;
	public:
		LList() { head = new Node ; head->next = head ;cur = head ;}
		~LList() ;
		LList(const LList &) ;
		bool End () const ;
		void Error(char *s)
		{cout << "\n Fatal error in LList : " << s << endl ; exit(1) ;}
		void ExtractPosition() ;
		bool Find(const T&) ;
		void First() ;
		void Front() ;
		T & GetData() const ;
		void Last() ;
		void InsertAfter(const T&) ;
		void InsertBefore(const T&) ;
		bool IsEmpty() const ;
		void Next() ;
		void Previous() ;
		void Reverse() ;
		void SetData(const T &) ;
		int Size() const ;
};

#endif

    Source: geocities.com/neonprimetime.geo/cpp/cpp_SourceCode

               ( geocities.com/neonprimetime.geo/cpp)                   ( geocities.com/neonprimetime.geo)