Home | History | Annotate | Download | only in pcre

Lines Matching defs:ecode

447    ecode       pointer to current position in compiled code
470 match(REGISTER USPTR eptr, REGISTER const uschar *ecode, USPTR mstart,
499 frame->Xecode = ecode;
515 #define ecode frame->Xecode
685 op = *ecode;
690 markptr = ecode + 2;
691 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode] + ecode[1], offset_top, md,
717 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode], offset_top, md,
728 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode], offset_top, md,
734 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode] + ecode[1], offset_top, md,
737 md->mark = ecode + 2;
743 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode], offset_top, md,
751 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode] + ecode[1], offset_top, md,
761 md->start_match_ptr = ecode + 2;
770 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode], offset_top, md,
773 md->start_match_ptr = ecode - GET(ecode, 1);
777 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode] + ecode[1+LINK_SIZE],
780 md->start_match_ptr = ecode - GET(ecode, 1);
781 md->mark = ecode + LINK_SIZE + 2;
800 number = GET2(ecode, 1+LINK_SIZE);
824 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode], offset_top, md,
827 (rrc != MATCH_THEN || md->start_match_ptr != ecode))
830 ecode += GET(ecode, 1);
832 while (*ecode == OP_ALT);
867 if (ecode[GET(ecode, 1)] != OP_ALT) /* Final alternative */
871 ecode += _pcre_OP_lengths[*ecode];
878 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode], offset_top, md, ims,
887 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode], offset_top, md, ims,
890 (rrc != MATCH_THEN || md->start_match_ptr != ecode))
892 ecode += GET(ecode, 1);
904 codelink= GET(ecode, 1);
909 if (ecode[LINK_SIZE+1] == OP_CALLOUT)
915 cb.callout_number = ecode[LINK_SIZE+2];
921 cb.pattern_position = GET(ecode, LINK_SIZE + 3);
922 cb.next_item_length = GET(ecode, 3 + 2*LINK_SIZE);
929 ecode += _pcre_OP_lengths[OP_CALLOUT];
932 condcode = ecode[LINK_SIZE+1];
941 ecode += GET(ecode, 1);
945 int recno = GET2(ecode, LINK_SIZE + 2); /* Recursion group number*/
1001 ecode += condition? 3 : GET(ecode, 1);
1007 offset = GET2(ecode, LINK_SIZE+2) << 1; /* Doubled ref number */
1069 ecode += condition? 3 : GET(ecode, 1);
1075 ecode += GET(ecode, 1);
1084 RMATCH(eptr, ecode + 1 + LINK_SIZE, offset_top, md, ims, NULL,
1089 ecode += 1 + LINK_SIZE + GET(ecode, LINK_SIZE + 2);
1090 while (*ecode == OP_ALT) ecode += GET(ecode, 1);
1093 (rrc != MATCH_THEN || md->start_match_ptr != ecode))
1100 ecode += codelink;
1109 if (condition || *ecode == OP_ALT)
1111 ecode += 1 + LINK_SIZE;
1114 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, match_cbegroup, RM49);
1125 ecode += 1 + LINK_SIZE;
1134 number = GET2(ecode, 1);
1150 ecode += 3;
1169 ecode = rec->after_call;
1199 ims = ecode[1];
1200 ecode += 2;
1214 RMATCH(eptr, ecode + 1 + LINK_SIZE, offset_top, md, ims, NULL, 0,
1222 (rrc != MATCH_THEN || md->start_match_ptr != ecode))
1224 ecode += GET(ecode, 1);
1226 while (*ecode == OP_ALT);
1227 if (*ecode == OP_KET) MRRETURN(MATCH_NOMATCH);
1236 do ecode += GET(ecode,1); while (*ecode == OP_ALT);
1237 ecode += 1 + LINK_SIZE;
1249 RMATCH(eptr, ecode + 1 + LINK_SIZE, offset_top, md, ims, NULL, 0,
1254 do ecode += GET(ecode,1); while (*ecode == OP_ALT);
1258 (rrc != MATCH_THEN || md->start_match_ptr != ecode))
1260 ecode += GET(ecode,1);
1262 while (*ecode == OP_ALT);
1266 ecode += 1 + LINK_SIZE;
1278 i = GET(ecode, 1);
1292 eptr -= GET(ecode, 1);
1299 ecode += 1 + LINK_SIZE;
1311 cb.callout_number = ecode[1];
1317 cb.pattern_position = GET(ecode, 2);
1318 cb.next_item_length = GET(ecode, 2 + LINK_SIZE);
1325 ecode += 2 + 2*LINK_SIZE;
1349 callpat = md->start_code + GET(ecode, 1);
1360 ecode += 1 + LINK_SIZE;
1361 new_recursive.after_call = ecode;
1397 (rrc != MATCH_THEN || md->start_match_ptr != ecode))
1429 prev = ecode;
1434 RMATCH(eptr, ecode + 1 + LINK_SIZE, offset_top, md, ims, eptrb, 0, RM7);
1441 (rrc != MATCH_THEN || md->start_match_ptr != ecode))
1443 ecode += GET(ecode,1);
1445 ecode == OP_ALT);
1449 if (*ecode != OP_ONCE && *ecode != OP_ALT) RRETURN(MATCH_NOMATCH);
1454 do ecode += GET(ecode, 1); while (*ecode == OP_ALT);
1465 if (*ecode == OP_KET || eptr == saved_eptr)
1467 ecode += 1+LINK_SIZE;
1477 if (ecode[1+LINK_SIZE] == OP_OPT)
1479 ims = (ims & ~PCRE_IMS) | ecode[4];
1483 if (*ecode == OP_KETRMIN)
1485 RMATCH(eptr, ecode + 1 + LINK_SIZE, offset_top, md, ims, eptrb, 0, RM8);
1487 ecode = prev;
1495 ecode += 1 + LINK_SIZE;
1505 do ecode += GET(ecode,1); while (*ecode == OP_ALT);
1516 next = ecode+1;
1520 ecode = next + 1 + LINK_SIZE;
1526 next = ecode+1;
1530 ecode++;
1536 next = ecode+1;
1538 ecode = next + 1 + LINK_SIZE;
1547 prev = ecode - GET(ecode, 1);
1611 ecode = rec->after_call;
1629 if (*ecode == OP_KET || eptr == saved_eptr)
1631 ecode += 1 + LINK_SIZE;
1642 if (*ecode == OP_KETRMIN)
1644 RMATCH(eptr, ecode + 1 + LINK_SIZE, offset_top, md, ims, eptrb, 0, RM12);
1651 ecode = prev;
1658 ecode += 1 + LINK_SIZE;
1673 ecode++;
1682 ecode++;
1689 ecode++;
1696 ecode++;
1712 ecode++;
1728 ecode++;
1742 ecode++;
1857 if ((*ecode++ == OP_WORD_BOUNDARY)?
1876 ecode++;
1888 ecode++;
1905 ecode++;
1922 ecode++;
1939 ecode++;
1956 ecode++;
1973 ecode++;
1990 ecode++;
2018 ecode++;
2052 ecode++;
2086 ecode++;
2108 ecode++;
2130 ecode++;
2148 switch(ecode[1])
2162 if ((ecode[2] != _pcre_ucp_gentype[prop->chartype]) == (op == OP_PROP))
2167 if ((ecode[2] != prop->chartype) == (op == OP_PROP))
2172 if ((ecode[2] != prop->script) == (op == OP_PROP))
2212 ecode += 3;
2241 ecode++;
2256 offset = GET2(ecode, 1) << 1; /* Doubled ref number */
2257 ecode += 3;
2279 switch (*ecode)
2287 c = *ecode++ - OP_CRSTAR;
2296 minimize = (*ecode == OP_CRMINRANGE);
2297 min = GET2(ecode, 1);
2298 max = GET2(ecode, 3);
2300 ecode += 5;
2343 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM14);
2372 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM15);
2395 data = ecode + 1; /* Save for matching */
2396 ecode += 33; /* Advance past the item */
2398 switch (*ecode)
2406 c = *ecode++ - OP_CRSTAR;
2415 minimize = (*ecode == OP_CRMINRANGE);
2416 min = GET2(ecode, 1);
2417 max = GET2(ecode, 3);
2419 ecode += 5;
2483 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM16);
2508 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM17);
2554 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM18);
2577 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM19);
2596 data = ecode + 1 + LINK_SIZE; /* Save for matching */
2597 ecode += GET(ecode, 1); /* Advance past the item */
2599 switch (*ecode)
2607 c = *ecode++ - OP_CRSTAR;
2616 minimize = (*ecode == OP_CRMINRANGE);
2617 min = GET2(ecode, 1);
2618 max = GET2(ecode, 3);
2620 ecode += 5;
2653 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM20);
2686 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM21);
2705 ecode++;
2706 GETCHARLEN(fc, ecode, length);
2712 while (length-- > 0) if (*ecode++ != *eptr++) MRRETURN(MATCH_NOMATCH);
2724 if (ecode[1] != *eptr++) MRRETURN(MATCH_NOMATCH);
2725 ecode += 2;
2736 ecode++;
2737 GETCHARLEN(fc, ecode, length);
2750 if (md->lcc[*ecode++] != md->lcc[*eptr++]) MRRETURN(MATCH_NOMATCH);
2759 ecode += length;
2783 if (md->lcc[ecode[1]] != md->lcc[*eptr++]) MRRETURN(MATCH_NOMATCH);
2784 ecode += 2;
2791 min = max = GET2(ecode, 1);
2792 ecode += 3;
2802 max = GET2(ecode, 1);
2803 minimize = *ecode == OP_MINUPTO;
2804 ecode += 3;
2811 ecode++;
2818 ecode++;
2825 ecode++;
2834 c = *ecode++ - OP_STAR;
2848 charptr = ecode;
2849 GETCHARLEN(fc, ecode, length);
2850 ecode += length;
2887 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM22);
2929 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM23);
2952 fc = *ecode++;
2983 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM24);
3013 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM25);
3042 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM26);
3071 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM27);
3089 ecode++;
3097 if (md->lcc[*ecode++] == c) MRRETURN(MATCH_NOMATCH);
3101 if (*ecode++ == c) MRRETURN(MATCH_NOMATCH);
3113 min = max = GET2(ecode, 1);
3114 ecode += 3;
3120 max = GET2(ecode, 1);
3121 minimize = *ecode == OP_NOTMINUPTO;
3122 ecode += 3;
3129 ecode++;
3136 ecode++;
3143 ecode++;
3149 max = GET2(ecode, 1);
3150 ecode += 3;
3159 c = *ecode++ - OP_NOTSTAR;
3168 fc = *ecode++;
3229 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM28);
3248 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM29);
3289 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM30);
3312 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM31);
3369 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM32);
3387 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM33);
3427 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM34);
3450 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM35);
3466 min = max = GET2(ecode, 1);
3468 ecode += 3;
3474 max = GET2(ecode, 1);
3475 minimize = *ecode == OP_TYPEMINUPTO;
3476 ecode += 3;
3483 ecode++;
3490 ecode++;
3497 ecode++;
3503 max = GET2(ecode, 1);
3504 ecode += 3;
3513 c = *ecode++ - OP_TYPESTAR;
3524 ctype = *ecode++; /* Code for the character type */
3530 prop_type = *ecode++;
3531 prop_value = *ecode++;
4245 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM36);
4261 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM37);
4281 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM38);
4299 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM39);
4317 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM40);
4335 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM59);
4354 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM60);
4374 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM61);
4394 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM62);
4426 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM41);
4458 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM42);
4621 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM43);
4919 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM44);
4960 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM45);
5249 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM46);
5456 RMATCH(eptr, ecode, offset_top, md, ims, eptrb, 0, RM47);
5472 DPRINTF(("Unknown opcode %d\n", *ecode));
5523 #undef ecode