Lines Matching refs:ch
856 static char /* if no counterpart, return ch */
857 othercase(int ch)
859 ch = (uch)ch;
860 assert(isalpha(ch));
861 if (isupper(ch))
862 return ((uch)tolower(ch));
863 else if (islower(ch))
864 return ((uch)toupper(ch));
866 return(ch);
875 bothcases(struct parse *p, int ch)
881 ch = (uch)ch;
882 assert(othercase(ch) != ch); /* p_bracket() would recurse */
885 bracket[0] = ch;
898 ordinary(struct parse *p, int ch)
902 if ((p->g->cflags®_ICASE) && isalpha((uch)ch) && othercase(ch) != ch)
903 bothcases(p, ch);
905 EMIT(OCHAR, (uch)ch);
906 if (cap[ch] == 0)
907 cap[ch] = p->g->ncategories++;