Lines Matching refs:endc
1948 * ch->endc. The modifier doesn't have to check for this delimiter character,
1952 endc; this was an unintended mistake.
2049 char const_member endc;
2168 int endc = startc == '(' ? ')' : '}';
2175 if (*p == endc)
2268 return c == ':' || c == ch->endc || c == '\0';
2567 if (!ParseModifierPart(&p, ':', ch->endc, ch->expr->emode,
3093 /* ":ts<any><endc>" or ":ts<any>:" */
3094 if (sep[0] != ch->endc && IsDelimiter(sep[1], ch)) {
3100 /* ":ts<endc>" or ":ts:" */
3195 return AMR_UNKNOWN; /* ":t<endc>" or ":t:" */
3236 return AMR_UNKNOWN; /* ":t<any>:" or ":t<any><endc>" */
3499 if (!ParseModifierPart(pp, ch->endc, ch->endc, else_emode,
3505 (*pp)--; /* Go back to the ch->endc. */
3581 if (!ParseModifierPart(pp, ch->endc, ch->endc, expr->emode,
3586 (*pp)--; /* Go back to the ch->endc. */
3701 IsSysVModifier(const char *p, char startc, char endc)
3709 else if (*p == endc) {
3732 if (!IsSysVModifier(mod, ch->startc, ch->endc))
3739 if (!ParseModifierPart(pp, ch->endc, ch->endc, expr->emode,
3746 (*pp)--; /* Go back to the ch->endc. */
3939 * If the expression is not followed by ch->endc or ':', fall
3973 else if (*p == '\0' && ch->endc != '\0') {
3977 ch->endc);
4030 if (*p == '\0' && ch->endc != '\0') {
4034 ch->endc, (int)(p - mod), mod);
4037 } else if (opts.strict && *p != '\0' && *p != ch->endc) {
4051 #define ModChain_Init(expr, startc, endc, sep, oneBigWord) \
4052 (ModChain) { expr, startc, endc, sep, oneBigWord }
4055 ModChain_Init(Expr *expr, char startc, char endc, char sep, bool oneBigWord)
4060 ch.endc = endc;
4073 char endc /* ')' or '}'; or '\0' for indirect modifiers */
4076 ModChain ch = ModChain_Init(expr, startc, endc, ' ', false);
4080 assert(endc == ')' || endc == '}' || endc == '\0');
4085 if (*p == '\0' && endc != '\0') {
4087 "Unclosed expression, expecting \"%c\"", ch.endc);
4091 while (*p != '\0' && *p != endc) {
4197 ParseVarname(const char **pp, char startc, char endc,
4207 if ((*p == endc || *p == ':') && depth == 0)
4211 if (*p == endc)
4398 char endc = startc == '(' ? ')' : '}';
4401 ParseVarname(&p, startc, endc, scope, nested_emode, &varname);
4406 else if (*p == endc)
4421 * ':' or at endc.
4442 p++; /* skip endc */
4471 *out_true_endc = endc;
4562 char endc; /* the expected '}' or ')' or '\0' */
4590 endc = '\0'; /* Appease GCC. */
4602 &endc, &v, &haveModifier, &extramodifiers,
4666 ApplyModifiers(&expr, &p, startc, endc);
4669 if (*p != '\0') /* Skip past endc if possible. */