00001 /* 00002 * List.h 00003 * 00004 * Created on: May 26, 2010 00005 * Author: Brenda Javornik (e-mail: brendaj (at) nwra.com) 00006 */ 00007 00008 #ifndef LIST_H_ 00009 #define LIST_H_ 00010 00020 struct node { 00021 char *content; 00022 struct node *next; 00023 }; 00024 00029 typedef struct node Node; 00030 00035 struct head { 00036 Node *head; 00037 int length; 00038 }; 00039 00044 typedef struct head Head; 00045 00051 typedef Node **ListIterator; 00052 00057 typedef Head *List; 00058 00059 List newList(); 00060 void freeList(List l); 00061 void insertList( char *item, List l); 00062 int getLengthList(List l); 00063 ListIterator newListIterator(List l); 00064 char *listIteratorNext(ListIterator li); 00065 int endOfList(ListIterator li); 00066 00067 #endif /* LIST_H_ */