plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

ldefs.h (4130B)


      1 # include <u.h>
      2 # include <libc.h>
      3 # include <ctype.h>
      4 # include <bio.h>
      5 # define PP 1
      6 
      7 #ifdef NOTDEF
      8 # define CWIDTH 8
      9 # define CMASK 0377
     10 #endif
     11 # define NCH 256
     12 
     13 
     14 # define TOKENSIZE 1000
     15 # define DEFSIZE 40
     16 # define DEFCHAR 1000
     17 # define STARTCHAR 100
     18 # define STARTSIZE 256
     19 # define CCLSIZE 1000
     20 
     21 # define TREESIZE 1000
     22 # define NSTATES 500
     23 # define MAXPOS 2500
     24 # define NTRANS 2000
     25 # define NOUTPUT 5000
     26 
     27 # define NACTIONS 100
     28 # define ALITTLEEXTRA 30
     29 
     30 # define RCCL NCH+90
     31 # define RNCCL NCH+91
     32 # define RSTR NCH+92
     33 # define RSCON NCH+93
     34 # define RNEWE NCH+94
     35 # define FINAL NCH+95
     36 # define RNULLS NCH+96
     37 # define RCAT NCH+97
     38 # define STAR NCH+98
     39 # define PLUS NCH+99
     40 # define QUEST NCH+100
     41 # define DIV NCH+101
     42 # define BAR NCH+102
     43 # define CARAT NCH+103
     44 # define S1FINAL NCH+104
     45 # define S2FINAL NCH+105
     46 
     47 # define DEFSECTION 1
     48 # define RULESECTION 2
     49 # define ENDSECTION 5
     50 # define TRUE 1
     51 # define FALSE 0
     52 
     53 # define PC 1
     54 # define PS 1
     55 
     56 # ifdef DEBUG
     57 # define LINESIZE 110
     58 extern int yydebug;
     59 extern int debug;		/* 1 = on */
     60 extern int charc;
     61 # endif
     62 
     63 # ifdef DEBUG
     64 extern int	freturn(int);
     65 # else
     66 # define freturn(s) s
     67 # endif
     68 
     69 extern int sargc;
     70 extern char **sargv;
     71 extern uchar buf[520];
     72 extern int yyline;		/* line number of file */
     73 extern int sect;
     74 extern int eof;
     75 extern int lgatflg;
     76 extern int divflg;
     77 extern int funcflag;
     78 extern int pflag;
     79 extern int casecount;
     80 extern int chset;	/* 1 = char set modified */
     81 extern Biobuf *fin, fout, *fother;
     82 extern int foutopen;
     83 extern int errorf;
     84 extern int fptr;
     85 extern char *cname;
     86 extern int prev;	/* previous input character */
     87 extern int pres;	/* present input character */
     88 extern int peek;	/* next input character */
     89 extern int *name;
     90 extern int *left;
     91 extern uintptr *right;
     92 extern int *parent;
     93 extern uchar **ptr;
     94 extern uchar *nullstr;
     95 extern int tptr;
     96 extern uchar pushc[TOKENSIZE];
     97 extern uchar *pushptr;
     98 extern uchar slist[STARTSIZE];
     99 extern uchar *slptr;
    100 extern uchar **def, **subs, *dchar;
    101 extern uchar **sname, *stchar;
    102 extern uchar *ccl;
    103 extern uchar *ccptr;
    104 extern uchar *dp, *sp;
    105 extern int dptr, sptr;
    106 extern uchar *bptr;		/* store input position */
    107 extern uchar *tmpstat;
    108 extern int count;
    109 extern int **foll;
    110 extern int *nxtpos;
    111 extern int *positions;
    112 extern int *gotof;
    113 extern int *nexts;
    114 extern uchar *nchar;
    115 extern int **state;
    116 extern int *sfall;		/* fallback state num */
    117 extern uchar *cpackflg;		/* true if state has been character packed */
    118 extern int *atable, aptr;
    119 extern int nptr;
    120 extern uchar symbol[NCH];
    121 extern uchar cindex[NCH];
    122 extern int xstate;
    123 extern int stnum;
    124 extern int ccount;
    125 extern uchar match[NCH];
    126 extern uchar extra[NACTIONS];
    127 extern uchar *pcptr, *pchar;
    128 extern int pchlen;
    129 extern int nstates, maxpos;
    130 extern int yytop;
    131 extern int report;
    132 extern int ntrans, treesize, outsize;
    133 extern long rcount;
    134 extern int *verify, *advance, *stoff;
    135 extern int scon;
    136 extern uchar *psave;
    137 
    138 extern void	acompute(int);
    139 extern void	add(int **, int);
    140 extern void	allprint(int);
    141 extern void	cclinter(int);
    142 extern void	cgoto(void);
    143 extern void	cfoll(int);
    144 extern int	cpyact(void);
    145 extern int	dupl(int);
    146 extern void	error(char *,...);
    147 extern void	first(int);
    148 extern void	follow(int);
    149 extern int	gch(void);
    150 extern uchar	*getl(uchar *);
    151 extern void	layout(void);
    152 extern void	lgate(void);
    153 extern int	lookup(uchar *, uchar **);
    154 extern int	member(int, uchar *);
    155 extern void	mkmatch(void);
    156 extern int	mnp(int, void*);
    157 extern int	mn0(int);
    158 extern int	mn1(int, int);
    159 extern int	mn2(int, int, uintptr);
    160 extern void	munputc(int);
    161 extern void	munputs(uchar *);
    162 extern void	*myalloc(int, int);
    163 extern void	nextstate(int, int);
    164 extern int	notin(int);
    165 extern void	packtrans(int, uchar *, int *, int, int);
    166 extern void	padd(int **, int);
    167 extern void	pccl(void);
    168 extern void	pfoll(void);
    169 extern void	phead1(void);
    170 extern void	phead2(void);
    171 extern void	pstate(int);
    172 extern void	ptail(void);
    173 extern void	sect1dump(void);
    174 extern void	sect2dump(void);
    175 extern void	statistics(void);
    176 extern void	stprt(int);
    177 extern void	strpt(uchar *);
    178 extern void	treedump(void);
    179 extern int	usescape(int);
    180 extern void	warning(char *,...);
    181 extern int	yyparse(void);
    182 extern void	yyerror(char *);