Home | History | Annotate | Download | only in regexp

Lines Matching defs:OP

135 #define	OP(p)	(*(p))
260 if (OP(regnext(scan)) == END) { /* Only one top-level choice. */
264 if (OP(scan) == EXACTLY)
266 else if (OP(scan) == BOL)
281 if (OP(scan) == EXACTLY && (int) strlen(OPERAND(scan)) >= len) {
419 char op;
427 op = *regparse;
428 if (!ISMULT(op)) {
433 if (!(flags&HASWIDTH) && op != '?')
435 *flagp = (op != '+') ? (WORST|SPSTART) : (WORST|HASWIDTH);
437 if (op == '*' && (flags&SIMPLE))
439 else if (op == '*') {
446 } else if (op == '+' && (flags&SIMPLE))
448 else if (op == '+') {
455 } else if (op == '?') {
655 regnode(op)
656 int op;
668 *ptr++ = op;
695 reginsert(op, opnd)
696 int op;
714 place = opnd; /* Op node, where operand used to be. */
715 *place++ = op;
744 if (OP(scan) == BACK)
760 /* "Operandless" and "op != BRANCH" are synonymous in practice. */
761 if (p == NULL || p == &regdummy || OP(p) != BRANCH)
918 switch (OP(scan)) {
989 no = OP(scan) - OPEN;
1016 no = OP(scan) - CLOSE;
1034 if (OP(next) != BRANCH) /* No choice. */
1043 } while (scan != NULL && OP(scan) == BRANCH);
1061 if (OP(next) == EXACTLY)
1063 min = (OP(scan) == STAR) ? 0 : 1;
1108 switch (OP(p)) {
1157 if (OP(p) == BACK)
1173 char op = EXACTLY; /* Arbitrary non-END op. */
1178 while (op != END) { /* While that wasn't END last time... */
1179 op = OP(s);
1187 if (op == ANYOF || op == ANYBUT || op == EXACTLY) {
1212 regprop(op)
1213 char *op;
1220 switch (OP(op)) {
1261 "OPEN%d", OP(op)-OPEN);
1274 "CLOSE%d", OP(op)-CLOSE);