Annotation of coherent/b/bin/lex/lex.h, revision 1.1

1.1     ! root        1: /*
        !             2:  * lex/lex.h
        !             3:  */
        !             4: 
        !             5: /* #include <sys/mdata.h> */
        !             6: #include <stdio.h>
        !             7: #include <stdlib.h>
        !             8: #include <ctype.h>
        !             9: #include "lextype.h"
        !            10: 
        !            11: #ifdef MSDOS
        !            12: #define OUTFILE "lex_yy.c"
        !            13: #else
        !            14: #define        OUTFILE "lex.yy.c"
        !            15: #endif
        !            16: 
        !            17: /* Manifest constants. */
        !            18: #define        ARRSZ   1000                    /* maximum size of automaton */
        !            19: #define        NCBLK   16      /* number of chars in a quantum of stringspace */
        !            20: 
        !            21: /*
        !            22:  * Macros for manipulating bit-packed character classes.
        !            23:  */
        !            24: #define        classindex(n)   ((n) / NBCHAR * (MAXUCHAR+1))
        !            25: #define        classbit(n)     (1 << ((n) & (NBCHAR-1)))
        !            26: 
        !            27: /*
        !            28:  * Check for octal digit.
        !            29:  */
        !            30: #define        isoctl(c)       ('0' <= (c) && (c) <= '7')
        !            31: 
        !            32: /*
        !            33:  * Symbol storage.
        !            34:  */
        !            35: struct def {
        !            36:        struct  def *d_next;
        !            37:        char    *d_name;
        !            38:        int     d_data;
        !            39: };
        !            40: 
        !            41: /*
        !            42:  * Types of input lines in the specification.
        !            43:  */
        !            44: enum   {
        !            45:        LN_DFLT,        LN_LSPC,        LN_CTXT,        LN_SCON,
        !            46:        LN_LCOM,        LN_RCOM,        LN_DLIM,        LN_OPTN,
        !            47:        LN_EOFL
        !            48: };
        !            49: 
        !            50: /*
        !            51:  * Globals.
        !            52:  */
        !            53: extern int     nxt;
        !            54: extern int     yylval;
        !            55: extern int     ltype;
        !            56: extern int     inquotes;
        !            57: extern int     indefs;
        !            58: extern int     actn;
        !            59: extern int     clas;
        !            60: extern int     nfa[ARRSZ][2];
        !            61: extern struct  def *defstart;
        !            62: extern struct  def *ctxstart;
        !            63: extern struct  def *scnstart;
        !            64: extern unsigned char *classptr;
        !            65: extern FILE    *filein;
        !            66: extern FILE    *fileout;
        !            67: extern char    opnerr[];
        !            68: extern char    outmem[];
        !            69: extern char    noactn[];
        !            70: extern char    illchr[];
        !            71: extern char    illnln[];
        !            72: extern char    illrng[];
        !            73: extern char    illoct[];
        !            74: extern char    unddef[];
        !            75: extern char    undctx[];
        !            76: extern char    undstc[];
        !            77: extern char    illstc[];
        !            78: extern char    regsyn[];
        !            79: extern char    rulsyn[];
        !            80: extern char    actsyn[];
        !            81: extern char    unmopr[];
        !            82: extern char    reperr[];
        !            83: extern char    eoferr[];
        !            84: 
        !            85: /*
        !            86:  * Function definitions.
        !            87:  */
        !            88: extern char    *alloc();
        !            89: extern char    *ralloc();
        !            90: extern char    *getident();
        !            91: 
        !            92: /* end of lex.h */

unix.superglobalmegacorp.com

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