protected void mRE_ESC(bool _createToken)
{
int _ttype; IToken _token=null; int _begin=text.Length;
_ttype = RE_ESC;
match('\\');
{
switch ( cached_LA1 )
{
case '+':
{
match('+');
break;
}
case '/':
{
match('/');
break;
}
case '(':
{
match('(');
break;
}
case ')':
{
match(')');
break;
}
case '|':
{
match('|');
break;
}
case '.':
{
match('.');
break;
}
case '*':
{
match('*');
break;
}
case '?':
{
match('?');
break;
}
case '$':
{
match('$');
break;
}
case '^':
{
match('^');
break;
}
case '[':
{
match('[');
break;
}
case ']':
{
match(']');
break;
}
case '{':
{
match('{');
break;
}
case '}':
{
match('}');
break;
}
case 'a':
{
match('a');
break;
}
case 'b':
{
match('b');
break;
}
case 'c':
{
{
match('c');
matchRange('A','Z');
}
break;
}
case 't':
{
match('t');
break;
}
case 'r':
{
match('r');
break;
}
case 'v':
{
match('v');
break;
}
case 'f':
{
match('f');
break;
}
case 'n':
{
match('n');
break;
}
case 'e':
{
match('e');
break;
}
case '0': case '1': case '2': case '3':
case '4': case '5': case '6': case '7':
case '8': case '9':
{
{ // ( ... )+
int _cnt845=0;
for (;;)
{
if (((cached_LA1 >= '0' && cached_LA1 <= '9')) && (tokenSet_2_.member(cached_LA2)) && (true))
{
mDIGIT(false);
}
else
{
if (_cnt845 >= 1) { goto _loop845_breakloop; } else { throw new NoViableAltForCharException(cached_LA1, getFilename(), getLine(), getColumn());; }
}
_cnt845++;
}
_loop845_breakloop: ;
} // ( ... )+
break;
}
case 'x':
{
{
match('x');
mHEXDIGIT(false);
mHEXDIGIT(false);
}
break;
}
case 'u':
{
{
match('u');
mHEXDIGIT(false);
mHEXDIGIT(false);
mHEXDIGIT(false);
mHEXDIGIT(false);
}
break;
}
case '\\':
{
match('\\');
break;
}
case 'w':
{
match('w');
break;
}
case 'W':
{
match('W');
break;
}
case 's':
{
match('s');
break;
}
case 'S':
{
match('S');
break;
}
case 'd':
{
match('d');
break;
}
case 'D':
{
match('D');
break;
}
case 'p':
{
match('p');
break;
}
case 'P':
{
match('P');
break;
}
case 'A':
{
match('A');
break;
}
case 'z':
{
match('z');
break;
}
case 'Z':
{
match('Z');
break;
}
case 'g':
{
match('g');
break;
}
case 'B':
{
match('B');
break;
}
case 'k':
{
match('k');
break;
}
default:
{
throw new NoViableAltForCharException(cached_LA1, getFilename(), getLine(), getColumn());
}
}
}
if (_createToken && (null == _token) && (_ttype != Token.SKIP))
{
_token = makeToken(_ttype);
_token.setText(text.ToString(_begin, text.Length-_begin));
}
returnToken_ = _token;
}