29 typedef struct Parselex Parselex;
30 typedef struct Renode Renode;
38 void (*getnextr)(Parselex*);
41 int peek, peeklex, done, literal, nc;
78 static int lex(Parselex*);
79 static void getnextr(Parselex*);
80 static void getnextrlit(Parselex*);
81 static void getclass(Parselex*);
82 static Renode *e0(Parselex*);
83 static Renode *e1(Parselex*);
84 static Renode *e2(Parselex*);
85 static Renode *e3(Parselex*);
86 static Renode *buildclass(Parselex*);
87 static Renode *buildclassn(Parselex*);
88 static int pcmp(void*, void*);
89 static Reprog *regcomp1(char*, int, int);
90 static Reinst *compile(Renode*, Reprog*, int);
91 static Reinst *compile1(Renode*, Reinst*, int*, int);
92 static void prtree(Renode*, int, int);