home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 2 / crawlyvol2.bin / program / c / yaccsrc2 / y2.h < prev    next >
Encoding:
C/C++ Source or Header  |  1991-05-18  |  2.1 KB  |  53 lines

  1. /********************************************************************************/
  2. /*                              *************                                   */
  3. /*                              *  Y 2 . H  *                                   */
  4. /*                              *************                                   */
  5. /*                                                                              */
  6. /*  This file contains the external declarations needed to hook Yacc modules    */
  7. /* which were originally in Y2.C to their impure data in Y2IMP.2C. Also does    */
  8. /* the include of the original data/external file DTXTRN.H.                     */
  9. /*                                                                              */
  10. /********************************************************************************/
  11.  
  12. # include "dtxtrn.h" ; 01
  13.  
  14. # define IDENTIFIER   257
  15. # define MARK         258
  16. # define TERM         259
  17. # define LEFT         260
  18. # define RIGHT        261
  19. # define BINARY       262
  20. # define PREC         263
  21. # define LCURLY       264
  22. # define C_IDENTIFIER 265 /* name followed by colon */
  23. # define NUMBER       266
  24. # define START        267
  25. # define TYPEDEF      268
  26. # define TYPENAME     269
  27. # define UNION        270
  28. # define ENDFILE      0
  29.  
  30. /* communication variables between various I/O routines */
  31.  
  32. extern char * infile;     /* input file name */
  33. extern int    numbval;    /* value of an input number */
  34. extern char   tokname[ ]; /* input token name */
  35.  
  36. /* storage of names */
  37.  
  38. extern char   cnames[ ];  /* place where token and nonterminal names are stored */
  39. extern int    cnamsz;     /* size of cnames */
  40. extern char * cnamp;      /* place where next name is to be put in */
  41. extern int    ndefout;    /* number of defined symbols output */
  42.  
  43. /* storage of types */
  44. extern int    ntypes;     /* number of types defined */
  45. extern char * typeset[ ]; /* pointers to type tags */
  46.  
  47. /* symbol tables for tokens and nonterminals */
  48.  
  49. extern int    start;      /* start symbol */
  50.  
  51. /* assigned token type values */
  52. extern int    extval;
  53.