Lines Matching defs:catcher
406 Rex_t catcher;
429 catcher.type = REX_REP_CATCH;
430 catcher.serial = rex->serial;
431 catcher.re.rep_catch.ref = rex;
432 catcher.re.rep_catch.cont = cont;
433 catcher.re.rep_catch.beg = s;
434 catcher.re.rep_catch.n = n + 1;
435 catcher.next = rex->next;
446 r = parse(env, rex->re.group.expr.rex, &catcher, s);
814 Rex_t catcher;
829 catcher.type = REX_ALT_CATCH;
830 catcher.serial = rex->serial;
831 catcher.re.alt_catch.cont = cont;
832 catcher.next = rex->next;
833 r = parse(env, rex->re.group.expr.binary.left, &catcher, s);
837 ((Pos_t*)env->pos->vec + env->pos->cur - 1)->serial = catcher.serial = rex->re.group.expr.binary.serial;
838 n = parse(env, rex->re.group.expr.binary.right, &catcher, s);
1018 catcher.type = REX_CONJ_LEFT;
1019 catcher.re.conj_left.right = rex->re.group.expr.binary.right;
1020 catcher.re.conj_left.cont = &next;
1021 catcher.re.conj_left.beg = s;
1022 catcher.next = 0;
1023 return parse(env, rex->re.group.expr.binary.left, &catcher, s);
1186 catcher.re.group_catch.eo = rex->re.group.number ? &env->match[rex->re.group.number].rm_eo : (regoff_t*)0;
1188 catcher.type = REX_GROUP_CATCH;
1189 catcher.serial = rex->serial;
1190 catcher.re.group_catch.cont = cont;
1191 catcher.next = rex->next;
1192 r = parse(env, rex->re.group.expr.rex, &catcher, s);
1218 catcher.type = REX_GROUP_AHEAD_CATCH;
1219 catcher.flags = rex->flags;
1220 catcher.serial = rex->serial;
1221 catcher.re.rep_catch.beg = s;
1222 catcher.re.rep_catch.cont = cont;
1223 catcher.next = rex->next;
1224 return parse(env, rex->re.group.expr.rex, &catcher, s);
1237 catcher.type = REX_GROUP_BEHIND_CATCH;
1238 catcher.flags = rex->flags;
1239 catcher.serial = rex->serial;
1240 catcher.re.behind_catch.beg = s;
1241 catcher.re.behind_catch.end = e = env->end;
1242 catcher.re.behind_catch.cont = cont;
1243 catcher.next = rex->next;
1247 r = parse(env, rex->re.group.expr.rex, &catcher, t);
1263 catcher.type = REX_GROUP_BEHIND_NOT_CATCH;
1264 catcher.re.neg_catch.beg = s;
1265 catcher.next = 0;
1270 r = parse(env, rex->re.group.expr.rex, &catcher, t);
1286 catcher.re.cond_catch.next[0] = q->re.group.expr.binary.right;
1287 catcher.re.cond_catch.next[1] = q->re.group.expr.binary.left;
1290 catcher.re.cond_catch.next[0] = catcher.re.cond_catch.next[1] = 0;
1293 catcher.type = REX_GROUP_COND_CATCH;
1294 catcher.flags = rex->flags;
1295 catcher.serial = rex->serial;
1296 catcher.re.cond_catch.yes = 0;
1297 catcher.re.cond_catch.beg = s;
1298 catcher.re.cond_catch.cont = cont;
1299 catcher.next = rex->next;
1300 r = parse(env, q, &catcher, s);
1301 if (r == BAD || catcher.re.cond_catch.yes)
1308 if (q = catcher.re.cond_catch.next[r != NONE])
1310 catcher.type = REX_CAT;
1311 catcher.flags = q->flags;
1312 catcher.serial = q->serial;
1313 catcher.re.group_catch.cont = cont;
1314 catcher.next = rex->next;
1315 return parse(env, q, &catcher, s);
1320 catcher.type = REX_CAT;
1321 catcher.flags = rex->flags;
1322 catcher.serial = rex->serial;
1323 catcher.re.group_catch.cont = rex->re.cond_catch.cont;
1324 catcher.next = rex->next;
1325 return parse(env, rex->re.cond_catch.next[1], &catcher, rex->re.cond_catch.beg);
1329 catcher.type = REX_GROUP_CUT_CATCH;
1330 catcher.flags = rex->flags;
1331 catcher.serial = rex->serial;
1332 catcher.re.group_catch.cont = cont;
1333 catcher.next = rex->next;
1334 return parse(env, rex->re.group.expr.rex, &catcher, s);
1420 catcher.type = REX_NEG_CATCH;
1421 catcher.re.neg_catch.beg = s;
1424 memset(catcher.re.neg_catch.index = p, 0, n);
1425 catcher.next = rex->next;
1426 if (parse(env, rex->re.group.expr.rex, &catcher, s) == BAD)