Lines Matching refs:pfa

445 	struct fa *pfa;  in cgotofn()  local
783 if ((pfa = (struct fa *)malloc((numtrans + 1) in cgotofn()
786 where[s] = pfa; in cgotofn()
788 pfa->cc.h = -1; /* s is a final state */ in cgotofn()
790 pfa->cc.h = numtrans; in cgotofn()
791 pfa->st = 0; in cgotofn()
792 for (i = 1, pfa += 1; i <= numtrans; i++, pfa++) { in cgotofn()
793 pfa->cc.s = fatab[i].cc; in cgotofn()
794 pfa->st = (struct fa *)fatab[i].n; in cgotofn()
800 pfa = where[i]; in cgotofn()
801 pfa->st = where[0]; in cgotofn()
802 dprintf("state %d: (%o)\n", i, pfa, NULL); in cgotofn()
804 pfa->cc.h, pfa->st, NULL); in cgotofn()
805 for (k = 1; k <= pfa->cc.h; k++) { in cgotofn()
806 (pfa+k)->st = where[(int)(pfa+k)->st]; in cgotofn()
808 (pfa+k)->cc.s.cc_cs, (pfa+k)->cc.s.cc_ce, in cgotofn()
809 (pfa+k)->st); in cgotofn()
812 pfa = where[0]; in cgotofn()
813 if ((num = pfa->cc.h) < 0) in cgotofn()
815 for (pfa += num; num; num--, pfa--) in cgotofn()
816 if (pfa->cc.s.cc_ns == hatcn && pfa->cc.s.cc_cs == HAT) { in cgotofn()
817 return (pfa->st); in cgotofn()
1094 match(struct fa *pfa, wchar_t *p) in match() argument
1103 if (pfa->cc.h == 1) { /* fast test for first character, if possible */ in match()
1104 ns = (++pfa)->cc.s.cc_ns; in match()
1105 cs = (pfa)->cc.s.cc_cs; in match()
1106 ne = (pfa)->cc.s.cc_ne; in match()
1107 ce = (pfa)->cc.s.cc_ce; in match()
1114 pfa = pfa->st; in match()
1120 adv: if ((count = pfa->cc.h) < 0) in match()
1125 for (pfa += count; count; count--, pfa--) { in match()
1126 ns = (pfa)->cc.s.cc_ns; in match()
1127 cs = (pfa)->cc.s.cc_cs; in match()
1128 ne = (pfa)->cc.s.cc_ne; in match()
1129 ce = (pfa)->cc.s.cc_ce; in match()
1133 pfa = pfa->st; in match()
1134 if ((count = pfa->cc.h) < 0) in match()