Lines Matching defs:type

118 	int		type;		/* BRE,ERE,ARE,SRE,KRE		*/
146 node(Cenv_t* env, int type, int lo, int hi, size_t extra)
150 DEBUG_TEST(0x0800,(sfprintf(sfstdout, "%s:%d node(%d,%d,%d,%u)\n", file, line, type, lo, hi, sizeof(Rex_t) + extra)),(0));
154 e->type = type;
200 switch (e->type)
242 switch (e->type)
277 switch (e->type)
320 if (e->type == REX_NULL)
325 if (f->type == REX_NULL)
332 else if (e->type == REX_DOT && f->type == REX_DOT)
384 switch (e->type)
498 switch (e->type)
655 c = mp[env->type+escaped];
675 if (env->type < SRE || *sp != ',')
747 if (env->type < SRE && *sp == '?')
782 if (env->type == SRE || c == T_BACK && !(env->flags & REG_LENIENT))
800 if (escaped == 1 && (env->flags & REG_LENIENT) && (c = mp[env->type+escaped+2]) >= T_META)
804 if (env->type >= SRE)
810 if (env->type == KRE && *(env->cursor + env->token.len) == '-' && *(env->cursor + env->token.len + 1) == '(')
815 if (env->type == KRE && *(env->cursor + env->token.len) == '(')
849 else if (env->type == KRE && !env->parnest && (env->flags & REG_SHELL_GROUP))
863 if (env->type >= SRE && !(env->flags & REG_SHELL_ESCAPED) || (env->flags & REG_ESCAPE) && (c == '[' || c == '-' || c == ']' || env->delimiter && c == env->delimiter))
994 else if (c == '(' && env->type == BRE)
996 else if (c == ')' && env->type == BRE && env->parnest <= 0)
1007 if (env->type == BRE && (*(env->cursor + 1) == 0 || *(env->cursor + 1) == env->delimiter || *(env->cursor + 1) == env->terminator || *(env->cursor + 1) == '\\' && *(env->cursor + 2) == ')') || (env->flags & REG_MULTIPLE) && *(env->cursor + 1) == '\n')
1012 if (env->type == BRE && (env->cursor == env->pattern || posixkludge == 1))
1020 if (env->type != BRE && env->parnest <= 0)
1196 if (*env->cursor == '^' || env->type >= SRE && *env->cursor == '!')
1228 else if (env->type < SRE || !(env->flags & REG_SHELL_ESCAPED))
1238 if (env->type < SRE && !(env->flags & REG_LENIENT))
1255 if (env->type < SRE && !(env->flags & REG_LENIENT) && !mbwide())
1289 if (env->type < SRE && !(env->flags & REG_LENIENT))
1401 inrange = env->type >= SRE || (env->flags & REG_LENIENT);
1404 else if (env->type >= SRE)
1497 else if (env->type < SRE || !(env->flags & REG_SHELL_ESCAPED))
1507 if (env->type < SRE && !(env->flags & REG_LENIENT))
1549 if (env->type < SRE && !(env->flags & REG_LENIENT))
1698 if (env->type < SRE && !(env->flags & REG_LENIENT))
1705 inrange = env->type >= SRE || (env->flags & REG_LENIENT);
1755 ccl(Cenv_t* env, int type)
1762 if (!(f = classfun(type)))
1834 else if (env->type < SRE)
1846 switch (e->type)
1889 for (; e && e->type >= REX_GROUP && e->type <= REX_GROUP_CUT; e = e->re.group.expr.rex);
1890 if (e && e->type == REX_NEG)
1891 f->type = REX_GROUP;
1899 switch (e->type)
1931 switch (f->type)
1994 else if (f->type != REX_TRIE)
2177 if (typ >= 0 || env->type == ERE && (env->flags & REG_CLASS_ESCAPE))
2226 if (typ >= 0 || env->type == ERE && (env->flags & REG_CLASS_ESCAPE))
2292 if (e->re.nest.type[i] & ~x)
2294 e->re.nest.type[i] = x;
2306 e->re.nest.type[UCHAR_MAX+1] |= REX_NEST_terminator;
2318 if (e->re.nest.type[i] & ~x)
2320 e->re.nest.type[i] = x|REX_NEST_open|REX_NEST_close|(i<<REX_NEST_SHIFT);
2343 if (isalnum(i) || (e->re.nest.type[i] & (REX_NEST_close|REX_NEST_escape|REX_NEST_literal|REX_NEST_quote|REX_NEST_delimiter|REX_NEST_separator|REX_NEST_terminator)))
2345 e->re.nest.type[i] = REX_NEST_open;
2346 if ((x = chr(env, &esc)) < 0 || (e->re.nest.type[x] & (REX_NEST_close|REX_NEST_escape|REX_NEST_delimiter|REX_NEST_separator|REX_NEST_terminator)))
2355 e->re.nest.type[x] |= REX_NEST_close;
2356 e->re.nest.type[i] |= x << REX_NEST_SHIFT;
2398 if (c && env->type >= SRE)
2413 if (env->type < SRE && *env->cursor++ != '?')
2528 env->type = typ;
2571 int type;
2700 type = env->type;
2704 if (env->type == KRE)
2709 if (e->type == REX_NULL && env->type == ERE && !(env->flags & REG_NULL))
2740 if (env->type == KRE)
2755 env->type = type;
2761 type = env->type;
2771 env->type = type;
2886 if (e->type == REX_NULL)
2897 if ((e->type == REX_NULL || f->type == REX_NULL) && !(env->flags & REG_NULL))
3053 a->re.bm.complete = (env->stats.e || y != e && (e->type != REX_GROUP || y != e->re.group.expr.rex) || e->next || ((a->re.bm.left + a->re.bm.right) >= 0)) ? 0 : n;
3059 a->re.bm.skip[0] = a->re.bm.skip[env->mappednewline] = (y->next && y->next->type == REX_END) ? HIT : (n + a->re.bm.left);
3107 sfprintf(sfstderr, "STAT: complete=%d n=%d k=%d l=%d r=%d y=%d:%d e=%d:%d\n", a->re.bm.complete, n, k, a->re.bm.left, a->re.bm.right, y->type, y->next ? y->next->type : 0, e->type, e->next ? e->next->type : 0);
3152 switch (e->type)
3162 if (e->type != REX_DOT)
3277 env.type = (env.flags & REG_AUGMENTED) ? ARE : (env.flags & REG_EXTENDED) ? ERE : BRE;
3286 env.type = env.type == BRE ? SRE : KRE;
3318 if ((env.flags & REG_LEFT) && p->env->rex->type != REX_BEG)
3320 if (p->env->rex->type == REX_ALT)
3332 p->env->done.type = REX_DONE;
3334 if ((env.flags & REG_RIGHT) && e->type != REX_END)
3336 if (p->env->rex->type == REX_ALT)
3370 if (env.type == KRE)
3395 if (env.type >= SRE && env.error != REG_ESPACE && !(flags & REG_LITERAL))
3447 if (e->type == REX_BM)
3454 if (f->type == REX_BM)
3461 if (e->type == REX_BEG && f->type == REX_BEG)
3475 if (g->next && g->next->type == REX_END && h->next && h->next->type == REX_END)
3503 if (f->type != REX_END)