Annotation of 43BSD/contrib/spms/include/slslist.h, revision 1.1

1.1     ! root        1: /* $Header$ */
        !             2: 
        !             3: /*
        !             4:  * Singly-linked key+string list definitions
        !             5:  *
        !             6:  * Author: Peter J. Nicklin
        !             7:  */
        !             8: 
        !             9: /*
        !            10:  * Singly-linked key+string list macros
        !            11:  */
        !            12: #define SLSNUM(slslist)        (slslist)->nk
        !            13: /*
        !            14:  * Singly-linked key+string list block
        !            15:  */
        !            16: typedef struct _slsblk
        !            17:        {
        !            18:        char *key;                      /* points to key */
        !            19:        char *string;                   /* points to non-key string */
        !            20:        struct _slsblk *next;           /* ptr to next list block */
        !            21:        } SLSBLK;
        !            22: /*
        !            23:  * Singly-linked key+string list head block
        !            24:  */
        !            25: typedef struct _slslisthb
        !            26:        {
        !            27:        int nk;                         /* number of keys in list */
        !            28:        int maxkey;                     /* length of longest key */
        !            29:        int maxstr;                     /* length of longest non-key string */
        !            30:        SLSBLK *head;                   /* pointer to first list block */
        !            31:        SLSBLK *curblk;                 /* pointer to current block */
        !            32:        SLSBLK *tail;                   /* pointer to last list block */
        !            33:        } SLSLIST;
        !            34: /*
        !            35:  * Functions defined for singly-linked key+string list operations
        !            36:  */
        !            37: extern char *slsappend();              /* append key+string */
        !            38: extern SLSBLK *slsget();               /* get next key+string block */
        !            39: extern SLSLIST *slsinit();             /* initialize key+string list */
        !            40: extern char *slsinsert();              /* insert key+string */
        !            41: extern char *slsprepend();             /* prepend key+string */
        !            42: extern void slsprint();                        /* print key+string list */
        !            43: extern void slsrewind();               /* rewind key+string list */
        !            44: extern void slsrm();                   /* remove key+string list item */
        !            45: extern int slssort();                  /* sort key+string list */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.