Boo.Lang.Parser.BooLexer.mID_LETTER C# (CSharp) Method

mID_LETTER() protected method

protected mID_LETTER ( bool _createToken ) : void
_createToken bool
return void
        protected void mID_LETTER(bool _createToken)
        {
            int _ttype; IToken _token=null; int _begin=text.Length;
            _ttype = ID_LETTER;

            {
            switch ( cached_LA1 )
            {
            case '_':
            {
                match('_');
                break;
            }
            case 'a':  case 'b':  case 'c':  case 'd':
            case 'e':  case 'f':  case 'g':  case 'h':
            case 'i':  case 'j':  case 'k':  case 'l':
            case 'm':  case 'n':  case 'o':  case 'p':
            case 'q':  case 'r':  case 's':  case 't':
            case 'u':  case 'v':  case 'w':  case 'x':
            case 'y':  case 'z':
            {
                matchRange('a','z');
                break;
            }
            case 'A':  case 'B':  case 'C':  case 'D':
            case 'E':  case 'F':  case 'G':  case 'H':
            case 'I':  case 'J':  case 'K':  case 'L':
            case 'M':  case 'N':  case 'O':  case 'P':
            case 'Q':  case 'R':  case 'S':  case 'T':
            case 'U':  case 'V':  case 'W':  case 'X':
            case 'Y':  case 'Z':
            {
                matchRange('A','Z');
                break;
            }
            default:
                if ((((cached_LA1 >= '\u0080' && cached_LA1 <= '\ufffe')))&&(System.Char.IsLetter(LA(1))))
                {
                    matchRange('\u0080','\uFFFE');
                }
            else
            {
                throw new NoViableAltForCharException(cached_LA1, getFilename(), getLine(), getColumn());
            }
            break; }
            }
            if (_createToken && (null == _token) && (_ttype != Token.SKIP))
            {
            _token = makeToken(_ttype);
            _token.setText(text.ToString(_begin, text.Length-_begin));
            }
            returnToken_ = _token;
        }