1/* ========= begin header generated by ./mkh ========= */ 2#ifdef __cplusplus 3extern "C" { 4#endif 5 6/* === regcomp.c === */ 7static void p_ere(register struct parse *p, int stop); 8static void p_ere_exp(register struct parse *p); 9static void p_str(register struct parse *p); 10static void p_bre(register struct parse *p, register int end1, register int end2); 11static int p_simp_re(register struct parse *p, int starordinary); 12static int p_count(register struct parse *p); 13static void p_bracket(register struct parse *p); 14static void p_b_term(register struct parse *p, register cset *cs); 15static void p_b_cclass(register struct parse *p, register cset *cs); 16static void p_b_eclass(register struct parse *p, register cset *cs); 17static unsigned char p_b_symbol(register struct parse *p); 18static unsigned char p_b_coll_elem(register struct parse *p, int endc); 19static unsigned char othercase(int ch); 20static void bothcases(register struct parse *p, int ch); 21static void ordinary(register struct parse *p, register int ch); 22static void nonnewline(register struct parse *p); 23static void repeat(register struct parse *p, sopno start, int from, int to); 24static int seterr(register struct parse *p, int e); 25static cset *allocset(register struct parse *p); 26static void freeset(register struct parse *p, register cset *cs); 27static int freezeset(register struct parse *p, register cset *cs); 28static int firstch(register struct parse *p, register cset *cs); 29static int nch(register struct parse *p, register cset *cs); 30static void mcadd(register struct parse *p, register cset *cs, register const unsigned char *cp); 31#if 0 32static void mcsub(register cset *cs, register unsigned char *cp); 33static int mcin(register cset *cs, register unsigned char *cp); 34static unsigned char *mcfind(register cset *cs, register unsigned char *cp); 35#endif 36static void mcinvert(register struct parse *p, register cset *cs); 37static void mccase(register struct parse *p, register cset *cs); 38static int isinsets(register struct re_guts *g, int c); 39static int samesets(register struct re_guts *g, int c1, int c2); 40static void categorize(struct parse *p, register struct re_guts *g); 41static sopno dupl(register struct parse *p, sopno start, sopno finish); 42static void doemit(register struct parse *p, sop op, size_t opnd); 43static void doinsert(register struct parse *p, sop op, size_t opnd, sopno pos); 44static void dofwd(register struct parse *p, sopno pos, sop value); 45static void enlarge(register struct parse *p, sopno size); 46static void stripsnug(register struct parse *p, register struct re_guts *g); 47static void findmust(register struct parse *p, register struct re_guts *g); 48static sopno pluscount(register struct parse *p, register struct re_guts *g); 49 50#ifdef __cplusplus 51} 52#endif 53/* ========= end header generated by ./mkh ========= */ 54