home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 8 / FreshFishVol8-CD1.bin / useful / util / edit / mg / src.lzh / h / list.h < prev    next >
C/C++ Source or Header  |  1990-05-23  |  829b  |  27 lines

  1. #ifndef    LIST_H
  2. #define    LIST_H
  3.  
  4. /*
  5.  * All repeated structures are kept as linked lists of structures. All of
  6.  * these start with a LIST structure (except lines, which have their own
  7.  * abstraction). This will allow for later conversion to generic list
  8.  * manipulation routines should I decide to do that. it does mean that there
  9.  * are four extra bytes per window. I feel that this is an acceptable price,
  10.  * considering that there are usually only one or two windows.
  11.  */
  12. struct list {
  13.     union {
  14.         struct window  *l_wp;
  15.         struct buffer  *x_bp;    /* l_bp is used by LINE */
  16.         struct macro   *l_mp;
  17.         struct list    *l_nxt;
  18.     }               l_p;
  19.     char           *l_name;
  20. };
  21. /*
  22.  * Usual hack - to keep from uglifying the code with lotsa references through
  23.  * the union, we #define something for it.
  24.  */
  25. #define l_next    l_p.l_nxt
  26. #endif
  27.