version 1.14, 2000/03/11 15:54:44 |
version 1.15, 2000/07/02 01:17:00 |
|
|
#define MAXOUT 10 /* maximum # of diversions */ |
#define MAXOUT 10 /* maximum # of diversions */ |
#define MAXSTR 512 /* maximum size of string */ |
#define MAXSTR 512 /* maximum size of string */ |
#define BUFSIZE 4096 /* starting size of pushback buffer */ |
#define BUFSIZE 4096 /* starting size of pushback buffer */ |
#define STACKMAX 4096 /* size of call stack */ |
#define INITSTACKMAX 4096 /* starting size of call stack */ |
#define STRSPMAX 4096 /* starting size of string space */ |
#define STRSPMAX 64 /* starting size of string space */ |
#define MAXTOK MAXSTR /* maximum chars in a tokn */ |
#define MAXTOK MAXSTR /* maximum chars in a tokn */ |
#define HASHSIZE 199 /* maximum size of hashtab */ |
#define HASHSIZE 199 /* maximum size of hashtab */ |
#define MAXCCHARS 5 /* max size of comment/quote delim */ |
#define MAXCCHARS 5 /* max size of comment/quote delim */ |
|
|
* pushs() - push a string pointer onto stack |
* pushs() - push a string pointer onto stack |
*/ |
*/ |
#define gpbc() (bp > bufbase) ? *--bp : obtain_char(infile+ilevel) |
#define gpbc() (bp > bufbase) ? *--bp : obtain_char(infile+ilevel) |
#define pushf(x) if (sp < STACKMAX) mstack[++sp].sfra = (x) |
#define pushf(x) \ |
#define pushs(x) if (sp < STACKMAX) mstack[++sp].sstr = (x) |
do { \ |
|
if (++sp == STACKMAX) \ |
|
enlarge_stack();\ |
|
mstack[sp].sfra = (x); \ |
|
sstack[sp] = 0; \ |
|
} while (0); |
|
|
|
#define pushs(x) \ |
|
do { \ |
|
if (++sp == STACKMAX) \ |
|
enlarge_stack();\ |
|
mstack[sp].sstr = (x); \ |
|
sstack[sp] = 1; \ |
|
} while (0); |
|
|
|
#define pushs1(x) \ |
|
do { \ |
|
if (++sp == STACKMAX) \ |
|
enlarge_stack();\ |
|
mstack[sp].sstr = (x); \ |
|
sstack[sp] = 0; \ |
|
} while (0); |
|
|
/* |
/* |
* . . |
* . . |
* | . | <-- sp | . | |
* | . | <-- sp | . | |
|
|
*/ |
*/ |
#define PARLEV (mstack[fp].sfra) |
#define PARLEV (mstack[fp].sfra) |
#define CALTYP (mstack[fp-1].sfra) |
#define CALTYP (mstack[fp-1].sfra) |
#define PREVEP compute_prevep() |
#define PREVEP (mstack[fp+3].sstr) |
#define PREVSP (fp-3) |
#define PREVSP (fp-3) |
#define PREVFP (mstack[fp-2].sfra) |
#define PREVFP (mstack[fp-2].sfra) |