1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- enum{
- Dump = 0, /* Actions must be in order of descending importance */
- HoldHeader,
- Hold,
- SaveLine,
- Lineoff, /* Lineoff must be the last action code */
- Nactions,
- Nhash = 128,
- regexp = 1, /* types: literal string or regular expression */
- string = 2,
- MaxHtml = 256,
- Hdrsize = 4096,
- Bodysize = 8192,
- Maxread = 64*1024,
- };
- typedef struct spat Spat;
- typedef struct pattern Pattern;
- typedef struct patterns Patterns;
- struct spat
- {
- char* string;
- int len;
- int c1;
- Spat* next;
- Spat* alt;
- };
- struct pattern{
- struct pattern *next;
- int action;
- int type;
- Spat* alt;
- union{
- Reprog* pat;
- Spat* spat[Nhash];
- };
- };
- struct patterns {
- char *action;
- Pattern *strings;
- Pattern *regexps;
- };
- extern int debug;
- extern Patterns patterns[];
- extern char header[];
- extern char cmd[];
- extern void conv64(char*, char*, char*, int);
- extern int convert(char*, char*, char*, int, int);
- extern void* Malloc(long n);
- extern int matchpat(Pattern*, char*, Resub*);
- extern char* readmsg(Biobuf*, int*, int*);
- extern void parsepats(Biobuf*);
- extern void* Realloc(void*, ulong);
- extern void xprint(int, char*, Resub*);
|