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

mLBRACK() public method

public mLBRACK ( bool _createToken ) : void
_createToken bool
return void
        public void mLBRACK(bool _createToken)
        {
            int _ttype; IToken _token=null; int _begin=text.Length;
            _ttype = LBRACK;

            match('[');
            if (0==inputState.guessing)
            {
            EnterSkipWhitespaceRegion();
            }
            {
            bool synPredMatched722 = false;
            if (((cached_LA1=='a'||cached_LA1=='m')))
            {
                int _m722 = mark();
                synPredMatched722 = true;
                inputState.guessing++;
                try {
                    {
                        switch ( cached_LA1 )
                        {
                        case 'm':
                        {
                            match("module:");
                            break;
                        }
                        case 'a':
                        {
                            match("assembly:");
                            break;
                        }
                        default:
                        {
                            throw new NoViableAltForCharException(cached_LA1, getFilename(), getLine(), getColumn());
                        }
                         }
                    }
                }
                catch (RecognitionException)
                {
                    synPredMatched722 = false;
                }
                rewind(_m722);
                inputState.guessing--;
            }
            if ( synPredMatched722 )
            {
                {
                    switch ( cached_LA1 )
                    {
                    case 'm':
                    {
                        match("module:");
                        if (0==inputState.guessing)
                        {
                            _ttype = MODULE_ATTRIBUTE_BEGIN;
                        }
                        break;
                    }
                    case 'a':
                    {
                        match("assembly:");
                        if (0==inputState.guessing)
                        {
                            _ttype = ASSEMBLY_ATTRIBUTE_BEGIN;
                        }
                        break;
                    }
                    default:
                    {
                        throw new NoViableAltForCharException(cached_LA1, getFilename(), getLine(), getColumn());
                    }
                     }
                }
            }
            else {
            }

            }
            if (_createToken && (null == _token) && (_ttype != Token.SKIP))
            {
            _token = makeToken(_ttype);
            _token.setText(text.ToString(_begin, text.Length-_begin));
            }
            returnToken_ = _token;
        }