include/libtu/dlist.h

changeset 58
789df543d0c3
parent 57
de75d868bc0b
child 59
d8ecbeda7683
--- a/include/libtu/dlist.h	Sun Jan 25 12:07:52 2004 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
- * libtu/common.h
- *
- * Copyright (c) Tuomo Valkonen 1999-2002. 
- *
- * You may distribute and modify this library under the terms of either
- * the Clarified Artistic License or the GNU LGPL, version 2.1 or later.
- */
-
-#ifndef LIBTU_DLIST_H
-#define LIBTU_DLIST_H
-
-#define LINK_ITEM(LIST, ITEM, NEXT, PREV) \
-	(ITEM)->NEXT=NULL;                    \
-	if((LIST)==NULL){                     \
-		(LIST)=(ITEM);                    \
-		(ITEM)->PREV=(ITEM);              \
-	}else{                                \
-		(ITEM)->PREV=(LIST)->PREV;        \
-		(ITEM)->PREV->NEXT=(ITEM);        \
-		(LIST)->PREV=(ITEM);              \
-	}
-
-
-#define LINK_ITEM_FIRST(LIST, ITEM, NEXT, PREV) \
-	(ITEM)->NEXT=(LIST);                        \
-	if((LIST)==NULL){                           \
-		(ITEM)->PREV=(ITEM);                    \
-	}else{                                      \
-		(ITEM)->PREV=(LIST)->PREV;              \
-		(LIST)->PREV=(ITEM);                    \
-	}                                           \
-	(LIST)=(ITEM);
-
-
-#define LINK_ITEM_LIST LINK_ITEM
-
-
-#define LINK_ITEM_BEFORE(LIST, BEFORE, ITEM, NEXT, PREV) \
-	(ITEM)->NEXT=(BEFORE);                               \
-	(ITEM)->PREV=(BEFORE)->PREV;                         \
-	(BEFORE)->PREV=(ITEM);                               \
-	if((BEFORE)==(LIST))                                 \
-		(LIST)=(ITEM);                                   \
-	else                                                 \
-		(ITEM)->PREV->NEXT=(ITEM)
-
-
-#define LINK_ITEM_AFTER(LIST, AFTER, ITEM, NEXT, PREV) \
-	(ITEM)->NEXT=(AFTER)->NEXT;                        \
-	(ITEM)->PREV=(AFTER);                              \
-	(AFTER)->NEXT=(ITEM);                              \
-	if((ITEM)->NEXT==NULL)                             \
-		(LIST)->PREV=(ITEM);                           \
-	else                                               \
-		(ITEM)->NEXT->PREV=ITEM;
-
-
-#define UNLINK_ITEM(LIST, ITEM, NEXT, PREV)  \
-	if((ITEM)->PREV!=NULL){                  \
-		if((ITEM)==(LIST)){                  \
-			(LIST)=(ITEM)->NEXT;             \
-			if((LIST)!=NULL)                 \
-				(LIST)->PREV=(ITEM)->PREV;   \
-		}else if((ITEM)->NEXT==NULL){        \
-			(ITEM)->PREV->NEXT=NULL;         \
-			(LIST)->PREV=(ITEM)->PREV;       \
-		}else{                               \
-			(ITEM)->PREV->NEXT=(ITEM)->NEXT; \
-			(ITEM)->NEXT->PREV=(ITEM)->PREV; \
-		}                                    \
-	}                                        \
-	(ITEM)->NEXT=NULL;                       \
-	(ITEM)->PREV=NULL;
-
-#endif /* LIBTU_DLIST_H */

mercurial