[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]

Exec provides a number of symmetric functions for handling lists.  There
are functions for inserting and removing nodes, for adding and removing
head and tail nodes, for inserting nodes in a priority order, and for
searching for nodes by name.  The prototypes for Exec list handling
functions are as follows.

   Exec Functions
   --------------
   VOID AddHead( struct List *list, struct Node *node );
   VOID AddTail( struct List *list, struct Node *node );
   VOID Enqueue( struct List *list, struct Node *node );
   struct Node *FindName( struct List *list, UBYTE *name );
   VOID Insert( struct List *list, struct Node *node, struct Node *pred );
   VOID Remove( struct Node *node );
   struct Node *RemHead( struct List *list );
   struct Node *RemTail( struct List *list );

   Exec Support Functions in amiga.lib
   -----------------------------------
   VOID NewList( struct List *list );

In this discussion of the Exec list handling functions, header represents
a pointer to List header, and node represents pointer to a Node.

 Insertion and Removal 
 Special Case Insertion 
 Special Case Removal 
 MinList/MinNode Operations 
 Prioritized Insertion 
 Searching by Name 
 More on the Use of Named Lists 
 List Macros for Assembly Language Programmers 
 Empty Lists 
 Scanning a List 
 Important Note About Shared Lists