123456789101112131415161718192021222324252627282930313233 |
- /*
- * Deterministic regexp program.
- */
- typedef struct Dreprog Dreprog;
- typedef struct Dreinst Dreinst;
- typedef struct Drecase Drecase;
- struct Dreinst
- {
- int isfinal;
- int isloop;
- Drecase *c;
- int nc;
- };
- struct Dreprog
- {
- Dreinst *start[4];
- int ninst;
- Dreinst inst[1];
- };
- struct Drecase
- {
- uint start;
- Dreinst *next;
- };
- Dreprog* dregcvt(Reprog*);
- int dregexec(Dreprog*, char*, int);
- Dreprog* Breaddfa(Biobuf *b);
- void Bprintdfa(Biobuf*, Dreprog*);
|