diff options
Diffstat (limited to 'lib/fifo.h')
| -rw-r--r-- | lib/fifo.h | 66 | 
1 files changed, 31 insertions, 35 deletions
diff --git a/lib/fifo.h b/lib/fifo.h index 6be75b7611..e75a72197a 100644 --- a/lib/fifo.h +++ b/lib/fifo.h @@ -21,42 +21,38 @@ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  #define __LIB_FIFO_H__  /* FIFO -- first in first out structure and macros.  */ -struct fifo -{ -  struct fifo *next; -  struct fifo *prev; +struct fifo { +	struct fifo *next; +	struct fifo *prev;  }; -#define FIFO_INIT(F)                                  \ -  do {                                                \ -    struct fifo *Xfifo = (struct fifo *)(F);          \ -    Xfifo->next = Xfifo->prev = Xfifo;                \ -  } while (0) - -#define FIFO_ADD(F,N)                                 \ -  do {                                                \ -    struct fifo *Xfifo = (struct fifo *)(F);          \ -    struct fifo *Xnode = (struct fifo *)(N);          \ -    Xnode->next = Xfifo;                              \ -    Xnode->prev = Xfifo->prev;                        \ -    Xfifo->prev = Xfifo->prev->next = Xnode;          \ -  } while (0) - -#define FIFO_DEL(N)                                   \ -  do {                                                \ -    struct fifo *Xnode = (struct fifo *)(N);          \ -    Xnode->prev->next = Xnode->next;                  \ -    Xnode->next->prev = Xnode->prev;                  \ -  } while (0) - -#define FIFO_HEAD(F)                                  \ -  ((((struct fifo *)(F))->next == (struct fifo *)(F)) \ -  ? NULL : (F)->next) - -#define FIFO_EMPTY(F)                                 \ -  (((struct fifo *)(F))->next == (struct fifo *)(F)) - -#define FIFO_TOP(F)                                   \ -  (FIFO_EMPTY(F) ? NULL : ((struct fifo *)(F))->next) +#define FIFO_INIT(F)                                                           \ +	do {                                                                   \ +		struct fifo *Xfifo = (struct fifo *)(F);                       \ +		Xfifo->next = Xfifo->prev = Xfifo;                             \ +	} while (0) + +#define FIFO_ADD(F, N)                                                         \ +	do {                                                                   \ +		struct fifo *Xfifo = (struct fifo *)(F);                       \ +		struct fifo *Xnode = (struct fifo *)(N);                       \ +		Xnode->next = Xfifo;                                           \ +		Xnode->prev = Xfifo->prev;                                     \ +		Xfifo->prev = Xfifo->prev->next = Xnode;                       \ +	} while (0) + +#define FIFO_DEL(N)                                                            \ +	do {                                                                   \ +		struct fifo *Xnode = (struct fifo *)(N);                       \ +		Xnode->prev->next = Xnode->next;                               \ +		Xnode->next->prev = Xnode->prev;                               \ +	} while (0) + +#define FIFO_HEAD(F)                                                           \ +	((((struct fifo *)(F))->next == (struct fifo *)(F)) ? NULL : (F)->next) + +#define FIFO_EMPTY(F) (((struct fifo *)(F))->next == (struct fifo *)(F)) + +#define FIFO_TOP(F) (FIFO_EMPTY(F) ? NULL : ((struct fifo *)(F))->next)  #endif /* __LIB_FIFO_H__ */  | 
