Lines Matching refs:pos
131 #define INSERT(op, pos) doinsert(p, (sop)(op), HERE()-(pos)+1, pos)
132 #define AHEAD(pos) dofwd(p, pos, HERE()-(pos))
133 #define ASTERN(sop, pos) EMIT(sop, HERE()-pos)
295 sopno pos;
304 pos = HERE();
388 INSERT(OPLUS_, pos);
389 ASTERN(O_PLUS, pos);
390 INSERT(OQUEST_, pos);
391 ASTERN(O_QUEST, pos);
394 INSERT(OPLUS_, pos);
395 ASTERN(O_PLUS, pos);
399 INSERT(OCH_, pos); /* offset slightly wrong */
400 ASTERN(OOR1, pos); /* this one's right */
401 AHEAD(pos); /* fix the OCH_ */
416 repeat(p, pos, count, count2);
494 sopno pos;
499 pos = HERE(); /* repetion op, if any, covers from here */
573 INSERT(OPLUS_, pos);
574 ASTERN(O_PLUS, pos);
575 INSERT(OQUEST_, pos);
576 ASTERN(O_QUEST, pos);
587 repeat(p, pos, count, count2);
1323 doinsert(struct parse *p, sop op, size_t opnd, sopno pos)
1339 assert(pos > 0);
1341 if (p->pbegin[i] >= pos) {
1344 if (p->pend[i] >= pos) {
1349 memmove((char *)&p->strip[pos+1], (char *)&p->strip[pos],
1350 (HERE()-pos-1)*sizeof(sop));
1351 p->strip[pos] = s;
1358 dofwd(struct parse *p, sopno pos, sop value)
1365 p->strip[pos] = OP(p->strip[pos]) | value;