    001// $ANTLR 3.5.2 /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g 2015-08-18 18:07:11
    002
    003package org.apache.tapestry5.internal.antlr;
    004
    005
    006import org.antlr.runtime.*;
    007import java.util.Stack;
    008import java.util.List;
    009import java.util.ArrayList;
    010
    011@SuppressWarnings("all")
    012public class PropertyExpressionLexer extends org.apache.tapestry5.internal.antlr.BaseLexer {
    013        public static final int EOF=-1;
    014        public static final int A=4;
    015        public static final int BANG=5;
    016        public static final int COLON=6;
    017        public static final int COMMA=7;
    018        public static final int DECIMAL=8;
    019        public static final int DEREF=9;
    020        public static final int DIGIT=10;
    021        public static final int E=11;
    022        public static final int F=12;
    023        public static final int FALSE=13;
    024        public static final int H=14;
    025        public static final int I=15;
    026        public static final int IDENTIFIER=16;
    027        public static final int INTEGER=17;
    028        public static final int JAVA_ID_PART=18;
    029        public static final int JAVA_ID_START=19;
    030        public static final int L=20;
    031        public static final int LBRACE=21;
    032        public static final int LBRACKET=22;
    033        public static final int LETTER=23;
    034        public static final int LPAREN=24;
    035        public static final int N=25;
    036        public static final int NULL=26;
    037        public static final int NUMBER_OR_RANGEOP=27;
    038        public static final int QUOTE=28;
    039        public static final int R=29;
    040        public static final int RANGEOP=30;
    041        public static final int RBRACE=31;
    042        public static final int RBRACKET=32;
    043        public static final int RPAREN=33;
    044        public static final int S=34;
    045        public static final int SAFEDEREF=35;
    046        public static final int SIGN=36;
    047        public static final int STRING=37;
    048        public static final int T=38;
    049        public static final int THIS=39;
    050        public static final int TRUE=40;
    051        public static final int U=41;
    052        public static final int WS=42;
    053
    054        // delegates
    055        // delegators
    056        public org.apache.tapestry5.internal.antlr.BaseLexer[] getDelegates() {
    057                return new org.apache.tapestry5.internal.antlr.BaseLexer[] {};
    058        }
    059
    060        public PropertyExpressionLexer() {}
    061        public PropertyExpressionLexer(CharStream input) {
    062                this(input, new RecognizerSharedState());
    063        }
    064        public PropertyExpressionLexer(CharStream input, RecognizerSharedState state) {
    065                super(input,state);
    066        }
    067        @Override public String getGrammarFileName() { return "/home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g"; }
    068
    069        // $ANTLR start "INTEGER"
    070        public final void mINTEGER() throws RecognitionException {
    071                try {
    072                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:31:2: ()
    073                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:31:4:
    074                        {
    075                        this.getClass(); /* Fix java.lang.VerifyError: Stack size too large */
    076                        }
    077
    078                }
    079                finally {
    080                        // do for sure before leaving
    081                }
    082        }
    083        // $ANTLR end "INTEGER"
    084
    085        // $ANTLR start "DEREF"
    086        public final void mDEREF() throws RecognitionException {
    087                try {
    088                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:35:2: ()
    089                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:35:4:
    090                        {
    091                        this.getClass(); /* Fix java.lang.VerifyError: Stack size too large */
    092                        }
    093
    094                }
    095                finally {
    096                        // do for sure before leaving
    097                }
    098        }
    099        // $ANTLR end "DEREF"
    100
    101        // $ANTLR start "RANGEOP"
    102        public final void mRANGEOP() throws RecognitionException {
    103                try {
    104                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:39:2: ()
    105                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:39:4:
    106                        {
    107                        this.getClass(); /* Fix java.lang.VerifyError: Stack size too large */
    108                        }
    109
    110                }
    111                finally {
    112                        // do for sure before leaving
    113                }
    114        }
    115        // $ANTLR end "RANGEOP"
    116
    117        // $ANTLR start "DECIMAL"
    118        public final void mDECIMAL() throws RecognitionException {
    119                try {
    120                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:43:2: ()
    121                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:43:4:
    122                        {
    123                        this.getClass(); /* Fix java.lang.VerifyError: Stack size too large */
    124                        }
    125
    126                }
    127                finally {
    128                        // do for sure before leaving
    129                }
    130        }
    131        // $ANTLR end "DECIMAL"
    132
    133        // $ANTLR start "LETTER"
    134        public final void mLETTER() throws RecognitionException {
    135                try {
    136                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:46:2: ( ( 'a' .. 'z' | 'A' .. 'Z' ) )
    137                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    138                        {
    139                        if ( (input.LA(1) >= 'A' && input.LA(1) <= 'Z')||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
    140                                input.consume();
    141                        }
    142                        else {
    143                                MismatchedSetException mse = new MismatchedSetException(null,input);
    144                                recover(mse);
    145                                throw mse;
    146                        }
    147                        }
    148
    149                }
    150                finally {
    151                        // do for sure before leaving
    152                }
    153        }
    154        // $ANTLR end "LETTER"
    155
    156        // $ANTLR start "DIGIT"
    157        public final void mDIGIT() throws RecognitionException {
    158                try {
    159                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:48:2: ( '0' .. '9' )
    160                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    161                        {
    162                        if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
    163                                input.consume();
    164                        }
    165                        else {
    166                                MismatchedSetException mse = new MismatchedSetException(null,input);
    167                                recover(mse);
    168                                throw mse;
    169                        }
    170                        }
    171
    172                }
    173                finally {
    174                        // do for sure before leaving
    175                }
    176        }
    177        // $ANTLR end "DIGIT"
    178
    179        // $ANTLR start "SIGN"
    180        public final void mSIGN() throws RecognitionException {
    181                try {
    182                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:50:2: ( ( '+' | '-' ) )
    183                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    184                        {
    185                        if ( input.LA(1)=='+'||input.LA(1)=='-' ) {
    186                                input.consume();
    187                        }
    188                        else {
    189                                MismatchedSetException mse = new MismatchedSetException(null,input);
    190                                recover(mse);
    191                                throw mse;
    192                        }
    193                        }
    194
    195                }
    196                finally {
    197                        // do for sure before leaving
    198                }
    199        }
    200        // $ANTLR end "SIGN"
    201
    202        // $ANTLR start "LPAREN"
    203        public final void mLPAREN() throws RecognitionException {
    204                try {
    205                        int _type = LPAREN;
    206                        int _channel = DEFAULT_TOKEN_CHANNEL;
    207                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:51:9: ( '(' )
    208                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:51:11: '('
    209                        {
    210                        match('(');
    211                        }
    212
    213                        state.type = _type;
    214                        state.channel = _channel;
    215                }
    216                finally {
    217                        // do for sure before leaving
    218                }
    219        }
    220        // $ANTLR end "LPAREN"
    221
    222        // $ANTLR start "RPAREN"
    223        public final void mRPAREN() throws RecognitionException {
    224                try {
    225                        int _type = RPAREN;
    226                        int _channel = DEFAULT_TOKEN_CHANNEL;
    227                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:52:9: ( ')' )
    228                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:52:11: ')'
    229                        {
    230                        match(')');
    231                        }
    232
    233                        state.type = _type;
    234                        state.channel = _channel;
    235                }
    236                finally {
    237                        // do for sure before leaving
    238                }
    239        }
    240        // $ANTLR end "RPAREN"
    241
    242        // $ANTLR start "LBRACKET"
    243        public final void mLBRACKET() throws RecognitionException {
    244                try {
    245                        int _type = LBRACKET;
    246                        int _channel = DEFAULT_TOKEN_CHANNEL;
    247                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:53:9: ( '[' )
    248                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:53:11: '['
    249                        {
    250                        match('[');
    251                        }
    252
    253                        state.type = _type;
    254                        state.channel = _channel;
    255                }
    256                finally {
    257                        // do for sure before leaving
    258                }
    259        }
    260        // $ANTLR end "LBRACKET"
    261
    262        // $ANTLR start "RBRACKET"
    263        public final void mRBRACKET() throws RecognitionException {
    264                try {
    265                        int _type = RBRACKET;
    266                        int _channel = DEFAULT_TOKEN_CHANNEL;
    267                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:54:9: ( ']' )
    268                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:54:11: ']'
    269                        {
    270                        match(']');
    271                        }
    272
    273                        state.type = _type;
    274                        state.channel = _channel;
    275                }
    276                finally {
    277                        // do for sure before leaving
    278                }
    279        }
    280        // $ANTLR end "RBRACKET"
    281
    282        // $ANTLR start "COMMA"
    283        public final void mCOMMA() throws RecognitionException {
    284                try {
    285                        int _type = COMMA;
    286                        int _channel = DEFAULT_TOKEN_CHANNEL;
    287                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:55:7: ( ',' )
    288                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:55:9: ','
    289                        {
    290                        match(',');
    291                        }
    292
    293                        state.type = _type;
    294                        state.channel = _channel;
    295                }
    296                finally {
    297                        // do for sure before leaving
    298                }
    299        }
    300        // $ANTLR end "COMMA"
    301
    302        // $ANTLR start "BANG"
    303        public final void mBANG() throws RecognitionException {
    304                try {
    305                        int _type = BANG;
    306                        int _channel = DEFAULT_TOKEN_CHANNEL;
    307                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:56:6: ( '!' )
    308                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:56:8: '!'
    309                        {
    310                        match('!');
    311                        }
    312
    313                        state.type = _type;
    314                        state.channel = _channel;
    315                }
    316                finally {
    317                        // do for sure before leaving
    318                }
    319        }
    320        // $ANTLR end "BANG"
    321
    322        // $ANTLR start "LBRACE"
    323        public final void mLBRACE() throws RecognitionException {
    324                try {
    325                        int _type = LBRACE;
    326                        int _channel = DEFAULT_TOKEN_CHANNEL;
    327                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:57:8: ( '{' )
    328                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:57:10: '{'
    329                        {
    330                        match('{');
    331                        }
    332
    333                        state.type = _type;
    334                        state.channel = _channel;
    335                }
    336                finally {
    337                        // do for sure before leaving
    338                }
    339        }
    340        // $ANTLR end "LBRACE"
    341
    342        // $ANTLR start "RBRACE"
    343        public final void mRBRACE() throws RecognitionException {
    344                try {
    345                        int _type = RBRACE;
    346                        int _channel = DEFAULT_TOKEN_CHANNEL;
    347                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:58:8: ( '}' )
    348                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:58:10: '}'
    349                        {
    350                        match('}');
    351                        }
    352
    353                        state.type = _type;
    354                        state.channel = _channel;
    355                }
    356                finally {
    357                        // do for sure before leaving
    358                }
    359        }
    360        // $ANTLR end "RBRACE"
    361
    362        // $ANTLR start "COLON"
    363        public final void mCOLON() throws RecognitionException {
    364                try {
    365                        int _type = COLON;
    366                        int _channel = DEFAULT_TOKEN_CHANNEL;
    367                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:59:7: ( ':' )
    368                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:59:9: ':'
    369                        {
    370                        match(':');
    371                        }
    372
    373                        state.type = _type;
    374                        state.channel = _channel;
    375                }
    376                finally {
    377                        // do for sure before leaving
    378                }
    379        }
    380        // $ANTLR end "COLON"
    381
    382        // $ANTLR start "QUOTE"
    383        public final void mQUOTE() throws RecognitionException {
    384                try {
    385                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:62:2: ( '\\'' )
    386                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:62:4: '\\''
    387                        {
    388                        match('\'');
    389                        }
    390
    391                }
    392                finally {
    393                        // do for sure before leaving
    394                }
    395        }
    396        // $ANTLR end "QUOTE"
    397
    398        // $ANTLR start "A"
    399        public final void mA() throws RecognitionException {
    400                try {
    401                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:67:2: ( ( 'a' | 'A' ) )
    402                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    403                        {
    404                        if ( input.LA(1)=='A'||input.LA(1)=='a' ) {
    405                                input.consume();
    406                        }
    407                        else {
    408                                MismatchedSetException mse = new MismatchedSetException(null,input);
    409                                recover(mse);
    410                                throw mse;
    411                        }
    412                        }
    413
    414                }
    415                finally {
    416                        // do for sure before leaving
    417                }
    418        }
    419        // $ANTLR end "A"
    420
    421        // $ANTLR start "E"
    422        public final void mE() throws RecognitionException {
    423                try {
    424                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:69:2: ( ( 'e' | 'E' ) )
    425                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    426                        {
    427                        if ( input.LA(1)=='E'||input.LA(1)=='e' ) {
    428                                input.consume();
    429                        }
    430                        else {
    431                                MismatchedSetException mse = new MismatchedSetException(null,input);
    432                                recover(mse);
    433                                throw mse;
    434                        }
    435                        }
    436
    437                }
    438                finally {
    439                        // do for sure before leaving
    440                }
    441        }
    442        // $ANTLR end "E"
    443
    444        // $ANTLR start "F"
    445        public final void mF() throws RecognitionException {
    446                try {
    447                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:71:2: ( ( 'f' | 'F' ) )
    448                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    449                        {
    450                        if ( input.LA(1)=='F'||input.LA(1)=='f' ) {
    451                                input.consume();
    452                        }
    453                        else {
    454                                MismatchedSetException mse = new MismatchedSetException(null,input);
    455                                recover(mse);
    456                                throw mse;
    457                        }
    458                        }
    459
    460                }
    461                finally {
    462                        // do for sure before leaving
    463                }
    464        }
    465        // $ANTLR end "F"
    466
    467        // $ANTLR start "H"
    468        public final void mH() throws RecognitionException {
    469                try {
    470                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:73:2: ( ( 'h' | 'H' ) )
    471                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    472                        {
    473                        if ( input.LA(1)=='H'||input.LA(1)=='h' ) {
    474                                input.consume();
    475                        }
    476                        else {
    477                                MismatchedSetException mse = new MismatchedSetException(null,input);
    478                                recover(mse);
    479                                throw mse;
    480                        }
    481                        }
    482
    483                }
    484                finally {
    485                        // do for sure before leaving
    486                }
    487        }
    488        // $ANTLR end "H"
    489
    490        // $ANTLR start "I"
    491        public final void mI() throws RecognitionException {
    492                try {
    493                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:75:2: ( ( 'i' | 'I' ) )
    494                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    495                        {
    496                        if ( input.LA(1)=='I'||input.LA(1)=='i' ) {
    497                                input.consume();
    498                        }
    499                        else {
    500                                MismatchedSetException mse = new MismatchedSetException(null,input);
    501                                recover(mse);
    502                                throw mse;
    503                        }
    504                        }
    505
    506                }
    507                finally {
    508                        // do for sure before leaving
    509                }
    510        }
    511        // $ANTLR end "I"
    512
    513        // $ANTLR start "L"
    514        public final void mL() throws RecognitionException {
    515                try {
    516                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:77:2: ( ( 'l' | 'L' ) )
    517                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    518                        {
    519                        if ( input.LA(1)=='L'||input.LA(1)=='l' ) {
    520                                input.consume();
    521                        }
    522                        else {
    523                                MismatchedSetException mse = new MismatchedSetException(null,input);
    524                                recover(mse);
    525                                throw mse;
    526                        }
    527                        }
    528
    529                }
    530                finally {
    531                        // do for sure before leaving
    532                }
    533        }
    534        // $ANTLR end "L"
    535
    536        // $ANTLR start "N"
    537        public final void mN() throws RecognitionException {
    538                try {
    539                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:79:2: ( ( 'n' | 'N' ) )
    540                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    541                        {
    542                        if ( input.LA(1)=='N'||input.LA(1)=='n' ) {
    543                                input.consume();
    544                        }
    545                        else {
    546                                MismatchedSetException mse = new MismatchedSetException(null,input);
    547                                recover(mse);
    548                                throw mse;
    549                        }
    550                        }
    551
    552                }
    553                finally {
    554                        // do for sure before leaving
    555                }
    556        }
    557        // $ANTLR end "N"
    558
    559        // $ANTLR start "R"
    560        public final void mR() throws RecognitionException {
    561                try {
    562                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:81:2: ( ( 'r' | 'R' ) )
    563                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    564                        {
    565                        if ( input.LA(1)=='R'||input.LA(1)=='r' ) {
    566                                input.consume();
    567                        }
    568                        else {
    569                                MismatchedSetException mse = new MismatchedSetException(null,input);
    570                                recover(mse);
    571                                throw mse;
    572                        }
    573                        }
    574
    575                }
    576                finally {
    577                        // do for sure before leaving
    578                }
    579        }
    580        // $ANTLR end "R"
    581
    582        // $ANTLR start "S"
    583        public final void mS() throws RecognitionException {
    584                try {
    585                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:83:2: ( ( 's' | 'S' ) )
    586                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    587                        {
    588                        if ( input.LA(1)=='S'||input.LA(1)=='s' ) {
    589                                input.consume();
    590                        }
    591                        else {
    592                                MismatchedSetException mse = new MismatchedSetException(null,input);
    593                                recover(mse);
    594                                throw mse;
    595                        }
    596                        }
    597
    598                }
    599                finally {
    600                        // do for sure before leaving
    601                }
    602        }
    603        // $ANTLR end "S"
    604
    605        // $ANTLR start "T"
    606        public final void mT() throws RecognitionException {
    607                try {
    608                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:85:2: ( ( 't' | 'T' ) )
    609                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    610                        {
    611                        if ( input.LA(1)=='T'||input.LA(1)=='t' ) {
    612                                input.consume();
    613                        }
    614                        else {
    615                                MismatchedSetException mse = new MismatchedSetException(null,input);
    616                                recover(mse);
    617                                throw mse;
    618                        }
    619                        }
    620
    621                }
    622                finally {
    623                        // do for sure before leaving
    624                }
    625        }
    626        // $ANTLR end "T"
    627
    628        // $ANTLR start "U"
    629        public final void mU() throws RecognitionException {
    630                try {
    631                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:87:2: ( ( 'u' | 'U' ) )
    632                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    633                        {
    634                        if ( input.LA(1)=='U'||input.LA(1)=='u' ) {
    635                                input.consume();
    636                        }
    637                        else {
    638                                MismatchedSetException mse = new MismatchedSetException(null,input);
    639                                recover(mse);
    640                                throw mse;
    641                        }
    642                        }
    643
    644                }
    645                finally {
    646                        // do for sure before leaving
    647                }
    648        }
    649        // $ANTLR end "U"
    650
    651        // $ANTLR start "NULL"
    652        public final void mNULL() throws RecognitionException {
    653                try {
    654                        int _type = NULL;
    655                        int _channel = DEFAULT_TOKEN_CHANNEL;
    656                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:91:7: ( N U L L )
    657                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:91:9: N U L L
    658                        {
    659                        mN();
    660
    661                        mU();
    662
    663                        mL();
    664
    665                        mL();
    666
    667                        }
    668
    669                        state.type = _type;
    670                        state.channel = _channel;
    671                }
    672                finally {
    673                        // do for sure before leaving
    674                }
    675        }
    676        // $ANTLR end "NULL"
    677
    678        // $ANTLR start "TRUE"
    679        public final void mTRUE() throws RecognitionException {
    680                try {
    681                        int _type = TRUE;
    682                        int _channel = DEFAULT_TOKEN_CHANNEL;
    683                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:92:6: ( T R U E )
    684                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:92:8: T R U E
    685                        {
    686                        mT();
    687
    688                        mR();
    689
    690                        mU();
    691
    692                        mE();
    693
    694                        }
    695
    696                        state.type = _type;
    697                        state.channel = _channel;
    698                }
    699                finally {
    700                        // do for sure before leaving
    701                }
    702        }
    703        // $ANTLR end "TRUE"
    704
    705        // $ANTLR start "FALSE"
    706        public final void mFALSE() throws RecognitionException {
    707                try {
    708                        int _type = FALSE;
    709                        int _channel = DEFAULT_TOKEN_CHANNEL;
    710                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:93:7: ( F A L S E )
    711                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:93:9: F A L S E
    712                        {
    713                        mF();
    714
    715                        mA();
    716
    717                        mL();
    718
    719                        mS();
    720
    721                        mE();
    722
    723                        }
    724
    725                        state.type = _type;
    726                        state.channel = _channel;
    727                }
    728                finally {
    729                        // do for sure before leaving
    730                }
    731        }
    732        // $ANTLR end "FALSE"
    733
    734        // $ANTLR start "THIS"
    735        public final void mTHIS() throws RecognitionException {
    736                try {
    737                        int _type = THIS;
    738                        int _channel = DEFAULT_TOKEN_CHANNEL;
    739                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:94:6: ( T H I S )
    740                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:94:8: T H I S
    741                        {
    742                        mT();
    743
    744                        mH();
    745
    746                        mI();
    747
    748                        mS();
    749
    750                        }
    751
    752                        state.type = _type;
    753                        state.channel = _channel;
    754                }
    755                finally {
    756                        // do for sure before leaving
    757                }
    758        }
    759        // $ANTLR end "THIS"
    760
    761        // $ANTLR start "IDENTIFIER"
    762        public final void mIDENTIFIER() throws RecognitionException {
    763                try {
    764                        int _type = IDENTIFIER;
    765                        int _channel = DEFAULT_TOKEN_CHANNEL;
    766                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:97:5: ( JAVA_ID_START ( JAVA_ID_PART )* )
    767                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:97:9: JAVA_ID_START ( JAVA_ID_PART )*
    768                        {
    769                        mJAVA_ID_START();
    770
    771                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:97:23: ( JAVA_ID_PART )*
    772                        loop1:
    773                        while (true) {
    774                                int alt1=2;
    775                                int LA1_0 = input.LA(1);
    776                                if ( (LA1_0=='$'||(LA1_0 >= '0' && LA1_0 <= '9')||(LA1_0 >= 'A' && LA1_0 <= 'Z')||LA1_0=='_'||(LA1_0 >= 'a' && LA1_0 <= 'z')||(LA1_0 >= '\u00C0' && LA1_0 <= '\u00D6')||(LA1_0 >= '\u00D8' && LA1_0 <= '\u00F6')||(LA1_0 >= '\u00F8' && LA1_0 <= '\u1FFF')||(LA1_0 >= '\u3040' && LA1_0 <= '\u318F')||(LA1_0 >= '\u3300' && LA1_0 <= '\u337F')||(LA1_0 >= '\u3400' && LA1_0 <= '\u3D2D')||(LA1_0 >= '\u4E00' && LA1_0 <= '\u9FFF')||(LA1_0 >= '\uF900' && LA1_0 <= '\uFAFF')) ) {
    777                                        alt1=1;
    778                                }
    779
    780                                switch (alt1) {
    781                                case 1 :
    782                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    783                                        {
    784                                        if ( input.LA(1)=='$'||(input.LA(1) >= '0' && input.LA(1) <= '9')||(input.LA(1) >= 'A' && input.LA(1) <= 'Z')||input.LA(1)=='_'||(input.LA(1) >= 'a' && input.LA(1) <= 'z')||(input.LA(1) >= '\u00C0' && input.LA(1) <= '\u00D6')||(input.LA(1) >= '\u00D8' && input.LA(1) <= '\u00F6')||(input.LA(1) >= '\u00F8' && input.LA(1) <= '\u1FFF')||(input.LA(1) >= '\u3040' && input.LA(1) <= '\u318F')||(input.LA(1) >= '\u3300' && input.LA(1) <= '\u337F')||(input.LA(1) >= '\u3400' && input.LA(1) <= '\u3D2D')||(input.LA(1) >= '\u4E00' && input.LA(1) <= '\u9FFF')||(input.LA(1) >= '\uF900' && input.LA(1) <= '\uFAFF') ) {
    785                                                input.consume();
    786                                        }
    787                                        else {
    788                                                MismatchedSetException mse = new MismatchedSetException(null,input);
    789                                                recover(mse);
    790                                                throw mse;
    791                                        }
    792                                        }
    793                                        break;
    794
    795                                default :
    796                                        break loop1;
    797                                }
    798                        }
    799
    800                        }
    801
    802                        state.type = _type;
    803                        state.channel = _channel;
    804                }
    805                finally {
    806                        // do for sure before leaving
    807                }
    808        }
    809        // $ANTLR end "IDENTIFIER"
    810
    811        // $ANTLR start "JAVA_ID_START"
    812        public final void mJAVA_ID_START() throws RecognitionException {
    813                try {
    814                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:102:5: ( '\\u0024' | '\\u0041' .. '\\u005a' | '\\u005f' | '\\u0061' .. '\\u007a' | '\\u00c0' .. '\\u00d6' | '\\u00d8' .. '\\u00f6' | '\\u00f8' .. '\\u00ff' | '\\u0100' .. '\\u1fff' | '\\u3040' .. '\\u318f' | '\\u3300' .. '\\u337f' | '\\u3400' .. '\\u3d2d' | '\\u4e00' .. '\\u9fff' | '\\uf900' .. '\\ufaff' )
    815                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    816                        {
    817                        if ( input.LA(1)=='$'||(input.LA(1) >= 'A' && input.LA(1) <= 'Z')||input.LA(1)=='_'||(input.LA(1) >= 'a' && input.LA(1) <= 'z')||(input.LA(1) >= '\u00C0' && input.LA(1) <= '\u00D6')||(input.LA(1) >= '\u00D8' && input.LA(1) <= '\u00F6')||(input.LA(1) >= '\u00F8' && input.LA(1) <= '\u1FFF')||(input.LA(1) >= '\u3040' && input.LA(1) <= '\u318F')||(input.LA(1) >= '\u3300' && input.LA(1) <= '\u337F')||(input.LA(1) >= '\u3400' && input.LA(1) <= '\u3D2D')||(input.LA(1) >= '\u4E00' && input.LA(1) <= '\u9FFF')||(input.LA(1) >= '\uF900' && input.LA(1) <= '\uFAFF') ) {
    818                                input.consume();
    819                        }
    820                        else {
    821                                MismatchedSetException mse = new MismatchedSetException(null,input);
    822                                recover(mse);
    823                                throw mse;
    824                        }
    825                        }
    826
    827                }
    828                finally {
    829                        // do for sure before leaving
    830                }
    831        }
    832        // $ANTLR end "JAVA_ID_START"
    833
    834        // $ANTLR start "JAVA_ID_PART"
    835        public final void mJAVA_ID_PART() throws RecognitionException {
    836                try {
    837                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:119:5: ( JAVA_ID_START | '\\u0030' .. '\\u0039' )
    838                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    839                        {
    840                        if ( input.LA(1)=='$'||(input.LA(1) >= '0' && input.LA(1) <= '9')||(input.LA(1) >= 'A' && input.LA(1) <= 'Z')||input.LA(1)=='_'||(input.LA(1) >= 'a' && input.LA(1) <= 'z')||(input.LA(1) >= '\u00C0' && input.LA(1) <= '\u00D6')||(input.LA(1) >= '\u00D8' && input.LA(1) <= '\u00F6')||(input.LA(1) >= '\u00F8' && input.LA(1) <= '\u1FFF')||(input.LA(1) >= '\u3040' && input.LA(1) <= '\u318F')||(input.LA(1) >= '\u3300' && input.LA(1) <= '\u337F')||(input.LA(1) >= '\u3400' && input.LA(1) <= '\u3D2D')||(input.LA(1) >= '\u4E00' && input.LA(1) <= '\u9FFF')||(input.LA(1) >= '\uF900' && input.LA(1) <= '\uFAFF') ) {
    841                                input.consume();
    842                        }
    843                        else {
    844                                MismatchedSetException mse = new MismatchedSetException(null,input);
    845                                recover(mse);
    846                                throw mse;
    847                        }
    848                        }
    849
    850                }
    851                finally {
    852                        // do for sure before leaving
    853                }
    854        }
    855        // $ANTLR end "JAVA_ID_PART"
    856
    857        // $ANTLR start "SAFEDEREF"
    858        public final void mSAFEDEREF() throws RecognitionException {
    859                try {
    860                        int _type = SAFEDEREF;
    861                        int _channel = DEFAULT_TOKEN_CHANNEL;
    862                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:128:2: ( '?.' )
    863                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:128:5: '?.'
    864                        {
    865                        match("?.");
    866
    867                        }
    868
    869                        state.type = _type;
    870                        state.channel = _channel;
    871                }
    872                finally {
    873                        // do for sure before leaving
    874                }
    875        }
    876        // $ANTLR end "SAFEDEREF"
    877
    878        // $ANTLR start "WS"
    879        public final void mWS() throws RecognitionException {
    880                try {
    881                        int _type = WS;
    882                        int _channel = DEFAULT_TOKEN_CHANNEL;
    883                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:130:5: ( ( ' ' | '\\t' | '\\n' | '\\r' )+ )
    884                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:130:7: ( ' ' | '\\t' | '\\n' | '\\r' )+
    885                        {
    886                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:130:7: ( ' ' | '\\t' | '\\n' | '\\r' )+
    887                        int cnt2=0;
    888                        loop2:
    889                        while (true) {
    890                                int alt2=2;
    891                                int LA2_0 = input.LA(1);
    892                                if ( ((LA2_0 >= '\t' && LA2_0 <= '\n')||LA2_0=='\r'||LA2_0==' ') ) {
    893                                        alt2=1;
    894                                }
    895
    896                                switch (alt2) {
    897                                case 1 :
    898                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    899                                        {
    900                                        if ( (input.LA(1) >= '\t' && input.LA(1) <= '\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) {
    901                                                input.consume();
    902                                        }
    903                                        else {
    904                                                MismatchedSetException mse = new MismatchedSetException(null,input);
    905                                                recover(mse);
    906                                                throw mse;
    907                                        }
    908                                        }
    909                                        break;
    910
    911                                default :
    912                                        if ( cnt2 >= 1 ) break loop2;
    913                                        EarlyExitException eee = new EarlyExitException(2, input);
    914                                        throw eee;
    915                                }
    916                                cnt2++;
    917                        }
    918
    919                         skip();
    920                        }
    921
    922                        state.type = _type;
    923                        state.channel = _channel;
    924                }
    925                finally {
    926                        // do for sure before leaving
    927                }
    928        }
    929        // $ANTLR end "WS"
    930
    931        // $ANTLR start "STRING"
    932        public final void mSTRING() throws RecognitionException {
    933                try {
    934                        int _type = STRING;
    935                        int _channel = DEFAULT_TOKEN_CHANNEL;
    936                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:135:2: ( QUOTE ( options {greedy=false; } : . )* QUOTE )
    937                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:135:4: QUOTE ( options {greedy=false; } : . )* QUOTE
    938                        {
    939                        mQUOTE();
    940
    941                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:135:10: ( options {greedy=false; } : . )*
    942                        loop3:
    943                        while (true) {
    944                                int alt3=2;
    945                                int LA3_0 = input.LA(1);
    946                                if ( (LA3_0=='\'') ) {
    947                                        alt3=2;
    948                                }
    949                                else if ( ((LA3_0 >= '\u0000' && LA3_0 <= '&')||(LA3_0 >= '(' && LA3_0 <= '\uFFFF')) ) {
    950                                        alt3=1;
    951                                }
    952
    953                                switch (alt3) {
    954                                case 1 :
    955                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:135:37: .
    956                                        {
    957                                        matchAny();
    958                                        }
    959                                        break;
    960
    961                                default :
    962                                        break loop3;
    963                                }
    964                        }
    965
    966                        mQUOTE();
    967
    968                         setText(getText().substring(1, getText().length()-1));
    969                        }
    970
    971                        state.type = _type;
    972                        state.channel = _channel;
    973                }
    974                finally {
    975                        // do for sure before leaving
    976                }
    977        }
    978        // $ANTLR end "STRING"
    979
    980        // $ANTLR start "NUMBER_OR_RANGEOP"
    981        public final void mNUMBER_OR_RANGEOP() throws RecognitionException {
    982                try {
    983                        int _type = NUMBER_OR_RANGEOP;
    984                        int _channel = DEFAULT_TOKEN_CHANNEL;
    985                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:148:2: ( ( SIGN )? ( DIGIT )+ ({...}? => '.' ( DIGIT )* |) | SIGN '.' ( DIGIT )+ | '.' ( ( DIGIT )+ | '.' |) )
    986                        int alt11=3;
    987                        switch ( input.LA(1) ) {
    988                        case '+':
    989                        case '-':
    990                                {
    991                                int LA11_1 = input.LA(2);
    992                                if ( ((LA11_1 >= '0' && LA11_1 <= '9')) ) {
    993                                        alt11=1;
    994                                }
    995                                else if ( (LA11_1=='.') ) {
    996                                        alt11=2;
    997                                }
    998
    999                                else {
    1000                                        int nvaeMark = input.mark();
    1001                                        try {
    1002                                                input.consume();
    1003                                                NoViableAltException nvae =
    1004                                                        new NoViableAltException("", 11, 1, input);
    1005                                                throw nvae;
    1006                                        } finally {
    1007                                                input.rewind(nvaeMark);
    1008                                        }
    1009                                }
    1010
    1011                                }
    1012                                break;
    1013                        case '0':
    1014                        case '1':
    1015                        case '2':
    1016                        case '3':
    1017                        case '4':
    1018                        case '5':
    1019                        case '6':
    1020                        case '7':
    1021                        case '8':
    1022                        case '9':
    1023                                {
    1024                                alt11=1;
    1025                                }
    1026                                break;
    1027                        case '.':
    1028                                {
    1029                                alt11=3;
    1030                                }
    1031                                break;
    1032                        default:
    1033                                NoViableAltException nvae =
    1034                                        new NoViableAltException("", 11, 0, input);
    1035                                throw nvae;
    1036                        }
    1037                        switch (alt11) {
    1038                                case 1 :
    1039                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:148:4: ( SIGN )? ( DIGIT )+ ({...}? => '.' ( DIGIT )* |)
    1040                                        {
    1041                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:148:4: ( SIGN )?
    1042                                        int alt4=2;
    1043                                        int LA4_0 = input.LA(1);
    1044                                        if ( (LA4_0=='+'||LA4_0=='-') ) {
    1045                                                alt4=1;
    1046                                        }
    1047                                        switch (alt4) {
    1048                                                case 1 :
    1049                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    1050                                                        {
    1051                                                        if ( input.LA(1)=='+'||input.LA(1)=='-' ) {
    1052                                                                input.consume();
    1053                                                        }
    1054                                                        else {
    1055                                                                MismatchedSetException mse = new MismatchedSetException(null,input);
    1056                                                                recover(mse);
    1057                                                                throw mse;
    1058                                                        }
    1059                                                        }
    1060                                                        break;
    1061
    1062                                        }
    1063
    1064                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:148:10: ( DIGIT )+
    1065                                        int cnt5=0;
    1066                                        loop5:
    1067                                        while (true) {
    1068                                                int alt5=2;
    1069                                                int LA5_0 = input.LA(1);
    1070                                                if ( ((LA5_0 >= '0' && LA5_0 <= '9')) ) {
    1071                                                        alt5=1;
    1072                                                }
    1073
    1074                                                switch (alt5) {
    1075                                                case 1 :
    1076                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    1077                                                        {
    1078                                                        if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
    1079                                                                input.consume();
    1080                                                        }
    1081                                                        else {
    1082                                                                MismatchedSetException mse = new MismatchedSetException(null,input);
    1083                                                                recover(mse);
    1084                                                                throw mse;
    1085                                                        }
    1086                                                        }
    1087                                                        break;
    1088
    1089                                                default :
    1090                                                        if ( cnt5 >= 1 ) break loop5;
    1091                                                        EarlyExitException eee = new EarlyExitException(5, input);
    1092                                                        throw eee;
    1093                                                }
    1094                                                cnt5++;
    1095                                        }
    1096
    1097                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:149:3: ({...}? => '.' ( DIGIT )* |)
    1098                                        int alt7=2;
    1099                                        int LA7_0 = input.LA(1);
    1100                                        if ( (LA7_0=='.') && (( input.LA(2) != '.' ))) {
    1101                                                alt7=1;
    1102                                        }
    1103
    1104                                        switch (alt7) {
    1105                                                case 1 :
    1106                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:150:4: {...}? => '.' ( DIGIT )*
    1107                                                        {
    1108                                                        if ( !(( input.LA(2) != '.' )) ) {
    1109                                                                throw new FailedPredicateException(input, "NUMBER_OR_RANGEOP", " input.LA(2) != '.' ");
    1110                                                        }
    1111                                                        match('.');
    1112                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:150:35: ( DIGIT )*
    1113                                                        loop6:
    1114                                                        while (true) {
    1115                                                                int alt6=2;
    1116                                                                int LA6_0 = input.LA(1);
    1117                                                                if ( ((LA6_0 >= '0' && LA6_0 <= '9')) ) {
    1118                                                                        alt6=1;
    1119                                                                }
    1120
    1121                                                                switch (alt6) {
    1122                                                                case 1 :
    1123                                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    1124                                                                        {
    1125                                                                        if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
    1126                                                                                input.consume();
    1127                                                                        }
    1128                                                                        else {
    1129                                                                                MismatchedSetException mse = new MismatchedSetException(null,input);
    1130                                                                                recover(mse);
    1131                                                                                throw mse;
    1132                                                                        }
    1133                                                                        }
    1134                                                                        break;
    1135
    1136                                                                default :
    1137                                                                        break loop6;
    1138                                                                }
    1139                                                        }
    1140
    1141                                                           _type = DECIMAL; stripLeadingPlus();
    1142                                                        }
    1143                                                        break;
    1144                                                case 2 :
    1145                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:151:6:
    1146                                                        {
    1147                                                          _type = INTEGER;  stripLeadingPlus();
    1148                                                        }
    1149                                                        break;
    1150
    1151                                        }
    1152
    1153                                        }
    1154                                        break;
    1155                                case 2 :
    1156                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:154:4: SIGN '.' ( DIGIT )+
    1157                                        {
    1158                                        mSIGN();
    1159
    1160                                        match('.');
    1161                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:154:13: ( DIGIT )+
    1162                                        int cnt8=0;
    1163                                        loop8:
    1164                                        while (true) {
    1165                                                int alt8=2;
    1166                                                int LA8_0 = input.LA(1);
    1167                                                if ( ((LA8_0 >= '0' && LA8_0 <= '9')) ) {
    1168                                                        alt8=1;
    1169                                                }
    1170
    1171                                                switch (alt8) {
    1172                                                case 1 :
    1173                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    1174                                                        {
    1175                                                        if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
    1176                                                                input.consume();
    1177                                                        }
    1178                                                        else {
    1179                                                                MismatchedSetException mse = new MismatchedSetException(null,input);
    1180                                                                recover(mse);
    1181                                                                throw mse;
    1182                                                        }
    1183                                                        }
    1184                                                        break;
    1185
    1186                                                default :
    1187                                                        if ( cnt8 >= 1 ) break loop8;
    1188                                                        EarlyExitException eee = new EarlyExitException(8, input);
    1189                                                        throw eee;
    1190                                                }
    1191                                                cnt8++;
    1192                                        }
    1193
    1194                                          _type = DECIMAL;  stripLeadingPlus();
    1195                                        }
    1196                                        break;
    1197                                case 3 :
    1198                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:156:4: '.' ( ( DIGIT )+ | '.' |)
    1199                                        {
    1200                                        match('.');
    1201                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:157:3: ( ( DIGIT )+ | '.' |)
    1202                                        int alt10=3;
    1203                                        switch ( input.LA(1) ) {
    1204                                        case '0':
    1205                                        case '1':
    1206                                        case '2':
    1207                                        case '3':
    1208                                        case '4':
    1209                                        case '5':
    1210                                        case '6':
    1211                                        case '7':
    1212                                        case '8':
    1213                                        case '9':
    1214                                                {
    1215                                                alt10=1;
    1216                                                }
    1217                                                break;
    1218                                        case '.':
    1219                                                {
    1220                                                alt10=2;
    1221                                                }
    1222                                                break;
    1223                                        default:
    1224                                                alt10=3;
    1225                                        }
    1226                                        switch (alt10) {
    1227                                                case 1 :
    1228                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:158:4: ( DIGIT )+
    1229                                                        {
    1230                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:158:4: ( DIGIT )+
    1231                                                        int cnt9=0;
    1232                                                        loop9:
    1233                                                        while (true) {
    1234                                                                int alt9=2;
    1235                                                                int LA9_0 = input.LA(1);
    1236                                                                if ( ((LA9_0 >= '0' && LA9_0 <= '9')) ) {
    1237                                                                        alt9=1;
    1238                                                                }
    1239
    1240                                                                switch (alt9) {
    1241                                                                case 1 :
    1242                                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:
    1243                                                                        {
    1244                                                                        if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
    1245                                                                                input.consume();
    1246                                                                        }
    1247                                                                        else {
    1248                                                                                MismatchedSetException mse = new MismatchedSetException(null,input);
    1249                                                                                recover(mse);
    1250                                                                                throw mse;
    1251                                                                        }
    1252                                                                        }
    1253                                                                        break;
    1254
    1255                                                                default :
    1256                                                                        if ( cnt9 >= 1 ) break loop9;
    1257                                                                        EarlyExitException eee = new EarlyExitException(9, input);
    1258                                                                        throw eee;
    1259                                                                }
    1260                                                                cnt9++;
    1261                                                        }
    1262
    1263                                                         _type = DECIMAL; stripLeadingPlus();
    1264                                                        }
    1265                                                        break;
    1266                                                case 2 :
    1267                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:159:6: '.'
    1268                                                        {
    1269                                                        match('.');
    1270                                                        _type = RANGEOP;
    1271                                                        }
    1272                                                        break;
    1273                                                case 3 :
    1274                                                        // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:160:6:
    1275                                                        {
    1276                                                        _type = DEREF;
    1277                                                        }
    1278                                                        break;
    1279
    1280                                        }
    1281
    1282                                        }
    1283                                        break;
    1284
    1285                        }
    1286                        state.type = _type;
    1287                        state.channel = _channel;
    1288                }
    1289                finally {
    1290                        // do for sure before leaving
    1291                }
    1292        }
    1293        // $ANTLR end "NUMBER_OR_RANGEOP"
    1294
    1295        @Override
    1296        public void mTokens() throws RecognitionException {
    1297                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:8: ( LPAREN | RPAREN | LBRACKET | RBRACKET | COMMA | BANG | LBRACE | RBRACE | COLON | NULL | TRUE | FALSE | THIS | IDENTIFIER | SAFEDEREF | WS | STRING | NUMBER_OR_RANGEOP )
    1298                int alt12=18;
    1299                int LA12_0 = input.LA(1);
    1300                if ( (LA12_0=='(') ) {
    1301                        alt12=1;
    1302                }
    1303                else if ( (LA12_0==')') ) {
    1304                        alt12=2;
    1305                }
    1306                else if ( (LA12_0=='[') ) {
    1307                        alt12=3;
    1308                }
    1309                else if ( (LA12_0==']') ) {
    1310                        alt12=4;
    1311                }
    1312                else if ( (LA12_0==',') ) {
    1313                        alt12=5;
    1314                }
    1315                else if ( (LA12_0=='!') ) {
    1316                        alt12=6;
    1317                }
    1318                else if ( (LA12_0=='{') ) {
    1319                        alt12=7;
    1320                }
    1321                else if ( (LA12_0=='}') ) {
    1322                        alt12=8;
    1323                }
    1324                else if ( (LA12_0==':') ) {
    1325                        alt12=9;
    1326                }
    1327                else if ( (LA12_0=='N'||LA12_0=='n') ) {
    1328                        int LA12_10 = input.LA(2);
    1329                        if ( (LA12_10=='U'||LA12_10=='u') ) {
    1330                                int LA12_18 = input.LA(3);
    1331                                if ( (LA12_18=='L'||LA12_18=='l') ) {
    1332                                        int LA12_22 = input.LA(4);
    1333                                        if ( (LA12_22=='L'||LA12_22=='l') ) {
    1334                                                int LA12_26 = input.LA(5);
    1335                                                if ( (LA12_26=='$'||(LA12_26 >= '0' && LA12_26 <= '9')||(LA12_26 >= 'A' && LA12_26 <= 'Z')||LA12_26=='_'||(LA12_26 >= 'a' && LA12_26 <= 'z')||(LA12_26 >= '\u00C0' && LA12_26 <= '\u00D6')||(LA12_26 >= '\u00D8' && LA12_26 <= '\u00F6')||(LA12_26 >= '\u00F8' && LA12_26 <= '\u1FFF')||(LA12_26 >= '\u3040' && LA12_26 <= '\u318F')||(LA12_26 >= '\u3300' && LA12_26 <= '\u337F')||(LA12_26 >= '\u3400' && LA12_26 <= '\u3D2D')||(LA12_26 >= '\u4E00' && LA12_26 <= '\u9FFF')||(LA12_26 >= '\uF900' && LA12_26 <= '\uFAFF')) ) {
    1336                                                        alt12=14;
    1337                                                }
    1338
    1339                                                else {
    1340                                                        alt12=10;
    1341                                                }
    1342
    1343                                        }
    1344
    1345                                        else {
    1346                                                alt12=14;
    1347                                        }
    1348
    1349                                }
    1350
    1351                                else {
    1352                                        alt12=14;
    1353                                }
    1354
    1355                        }
    1356
    1357                        else {
    1358                                alt12=14;
    1359                        }
    1360
    1361                }
    1362                else if ( (LA12_0=='T'||LA12_0=='t') ) {
    1363                        switch ( input.LA(2) ) {
    1364                        case 'R':
    1365                        case 'r':
    1366                                {
    1367                                int LA12_19 = input.LA(3);
    1368                                if ( (LA12_19=='U'||LA12_19=='u') ) {
    1369                                        int LA12_23 = input.LA(4);
    1370                                        if ( (LA12_23=='E'||LA12_23=='e') ) {
    1371                                                int LA12_27 = input.LA(5);
    1372                                                if ( (LA12_27=='$'||(LA12_27 >= '0' && LA12_27 <= '9')||(LA12_27 >= 'A' && LA12_27 <= 'Z')||LA12_27=='_'||(LA12_27 >= 'a' && LA12_27 <= 'z')||(LA12_27 >= '\u00C0' && LA12_27 <= '\u00D6')||(LA12_27 >= '\u00D8' && LA12_27 <= '\u00F6')||(LA12_27 >= '\u00F8' && LA12_27 <= '\u1FFF')||(LA12_27 >= '\u3040' && LA12_27 <= '\u318F')||(LA12_27 >= '\u3300' && LA12_27 <= '\u337F')||(LA12_27 >= '\u3400' && LA12_27 <= '\u3D2D')||(LA12_27 >= '\u4E00' && LA12_27 <= '\u9FFF')||(LA12_27 >= '\uF900' && LA12_27 <= '\uFAFF')) ) {
    1373                                                        alt12=14;
    1374                                                }
    1375
    1376                                                else {
    1377                                                        alt12=11;
    1378                                                }
    1379
    1380                                        }
    1381
    1382                                        else {
    1383                                                alt12=14;
    1384                                        }
    1385
    1386                                }
    1387
    1388                                else {
    1389                                        alt12=14;
    1390                                }
    1391
    1392                                }
    1393                                break;
    1394                        case 'H':
    1395                        case 'h':
    1396                                {
    1397                                int LA12_20 = input.LA(3);
    1398                                if ( (LA12_20=='I'||LA12_20=='i') ) {
    1399                                        int LA12_24 = input.LA(4);
    1400                                        if ( (LA12_24=='S'||LA12_24=='s') ) {
    1401                                                int LA12_28 = input.LA(5);
    1402                                                if ( (LA12_28=='$'||(LA12_28 >= '0' && LA12_28 <= '9')||(LA12_28 >= 'A' && LA12_28 <= 'Z')||LA12_28=='_'||(LA12_28 >= 'a' && LA12_28 <= 'z')||(LA12_28 >= '\u00C0' && LA12_28 <= '\u00D6')||(LA12_28 >= '\u00D8' && LA12_28 <= '\u00F6')||(LA12_28 >= '\u00F8' && LA12_28 <= '\u1FFF')||(LA12_28 >= '\u3040' && LA12_28 <= '\u318F')||(LA12_28 >= '\u3300' && LA12_28 <= '\u337F')||(LA12_28 >= '\u3400' && LA12_28 <= '\u3D2D')||(LA12_28 >= '\u4E00' && LA12_28 <= '\u9FFF')||(LA12_28 >= '\uF900' && LA12_28 <= '\uFAFF')) ) {
    1403                                                        alt12=14;
    1404                                                }
    1405
    1406                                                else {
    1407                                                        alt12=13;
    1408                                                }
    1409
    1410                                        }
    1411
    1412                                        else {
    1413                                                alt12=14;
    1414                                        }
    1415
    1416                                }
    1417
    1418                                else {
    1419                                        alt12=14;
    1420                                }
    1421
    1422                                }
    1423                                break;
    1424                        default:
    1425                                alt12=14;
    1426                        }
    1427                }
    1428                else if ( (LA12_0=='F'||LA12_0=='f') ) {
    1429                        int LA12_12 = input.LA(2);
    1430                        if ( (LA12_12=='A'||LA12_12=='a') ) {
    1431                                int LA12_21 = input.LA(3);
    1432                                if ( (LA12_21=='L'||LA12_21=='l') ) {
    1433                                        int LA12_25 = input.LA(4);
    1434                                        if ( (LA12_25=='S'||LA12_25=='s') ) {
    1435                                                int LA12_29 = input.LA(5);
    1436                                                if ( (LA12_29=='E'||LA12_29=='e') ) {
    1437                                                        int LA12_33 = input.LA(6);
    1438                                                        if ( (LA12_33=='$'||(LA12_33 >= '0' && LA12_33 <= '9')||(LA12_33 >= 'A' && LA12_33 <= 'Z')||LA12_33=='_'||(LA12_33 >= 'a' && LA12_33 <= 'z')||(LA12_33 >= '\u00C0' && LA12_33 <= '\u00D6')||(LA12_33 >= '\u00D8' && LA12_33 <= '\u00F6')||(LA12_33 >= '\u00F8' && LA12_33 <= '\u1FFF')||(LA12_33 >= '\u3040' && LA12_33 <= '\u318F')||(LA12_33 >= '\u3300' && LA12_33 <= '\u337F')||(LA12_33 >= '\u3400' && LA12_33 <= '\u3D2D')||(LA12_33 >= '\u4E00' && LA12_33 <= '\u9FFF')||(LA12_33 >= '\uF900' && LA12_33 <= '\uFAFF')) ) {
    1439                                                                alt12=14;
    1440                                                        }
    1441
    1442                                                        else {
    1443                                                                alt12=12;
    1444                                                        }
    1445
    1446                                                }
    1447
    1448                                                else {
    1449                                                        alt12=14;
    1450                                                }
    1451
    1452                                        }
    1453
    1454                                        else {
    1455                                                alt12=14;
    1456                                        }
    1457
    1458                                }
    1459
    1460                                else {
    1461                                        alt12=14;
    1462                                }
    1463
    1464                        }
    1465
    1466                        else {
    1467                                alt12=14;
    1468                        }
    1469
    1470                }
    1471                else if ( (LA12_0=='$'||(LA12_0 >= 'A' && LA12_0 <= 'E')||(LA12_0 >= 'G' && LA12_0 <= 'M')||(LA12_0 >= 'O' && LA12_0 <= 'S')||(LA12_0 >= 'U' && LA12_0 <= 'Z')||LA12_0=='_'||(LA12_0 >= 'a' && LA12_0 <= 'e')||(LA12_0 >= 'g' && LA12_0 <= 'm')||(LA12_0 >= 'o' && LA12_0 <= 's')||(LA12_0 >= 'u' && LA12_0 <= 'z')||(LA12_0 >= '\u00C0' && LA12_0 <= '\u00D6')||(LA12_0 >= '\u00D8' && LA12_0 <= '\u00F6')||(LA12_0 >= '\u00F8' && LA12_0 <= '\u1FFF')||(LA12_0 >= '\u3040' && LA12_0 <= '\u318F')||(LA12_0 >= '\u3300' && LA12_0 <= '\u337F')||(LA12_0 >= '\u3400' && LA12_0 <= '\u3D2D')||(LA12_0 >= '\u4E00' && LA12_0 <= '\u9FFF')||(LA12_0 >= '\uF900' && LA12_0 <= '\uFAFF')) ) {
    1472                        alt12=14;
    1473                }
    1474                else if ( (LA12_0=='?') ) {
    1475                        alt12=15;
    1476                }
    1477                else if ( ((LA12_0 >= '\t' && LA12_0 <= '\n')||LA12_0=='\r'||LA12_0==' ') ) {
    1478                        alt12=16;
    1479                }
    1480                else if ( (LA12_0=='\'') ) {
    1481                        alt12=17;
    1482                }
    1483                else if ( (LA12_0=='+'||(LA12_0 >= '-' && LA12_0 <= '.')||(LA12_0 >= '0' && LA12_0 <= '9')) ) {
    1484                        alt12=18;
    1485                }
    1486
    1487                else {
    1488                        NoViableAltException nvae =
    1489                                new NoViableAltException("", 12, 0, input);
    1490                        throw nvae;
    1491                }
    1492
    1493                switch (alt12) {
    1494                        case 1 :
    1495                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:10: LPAREN
    1496                                {
    1497                                mLPAREN();
    1498
    1499                                }
    1500                                break;
    1501                        case 2 :
    1502                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:17: RPAREN
    1503                                {
    1504                                mRPAREN();
    1505
    1506                                }
    1507                                break;
    1508                        case 3 :
    1509                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:24: LBRACKET
    1510                                {
    1511                                mLBRACKET();
    1512
    1513                                }
    1514                                break;
    1515                        case 4 :
    1516                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:33: RBRACKET
    1517                                {
    1518                                mRBRACKET();
    1519
    1520                                }
    1521                                break;
    1522                        case 5 :
    1523                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:42: COMMA
    1524                                {
    1525                                mCOMMA();
    1526
    1527                                }
    1528                                break;
    1529                        case 6 :
    1530                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:48: BANG
    1531                                {
    1532                                mBANG();
    1533
    1534                                }
    1535                                break;
    1536                        case 7 :
    1537                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:53: LBRACE
    1538                                {
    1539                                mLBRACE();
    1540
    1541                                }
    1542                                break;
    1543                        case 8 :
    1544                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:60: RBRACE
    1545                                {
    1546                                mRBRACE();
    1547
    1548                                }
    1549                                break;
    1550                        case 9 :
    1551                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:67: COLON
    1552                                {
    1553                                mCOLON();
    1554
    1555                                }
    1556                                break;
    1557                        case 10 :
    1558                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:73: NULL
    1559                                {
    1560                                mNULL();
    1561
    1562                                }
    1563                                break;
    1564                        case 11 :
    1565                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:78: TRUE
    1566                                {
    1567                                mTRUE();
    1568
    1569                                }
    1570                                break;
    1571                        case 12 :
    1572                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:83: FALSE
    1573                                {
    1574                                mFALSE();
    1575
    1576                                }
    1577                                break;
    1578                        case 13 :
    1579                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:89: THIS
    1580                                {
    1581                                mTHIS();
    1582
    1583                                }
    1584                                break;
    1585                        case 14 :
    1586                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:94: IDENTIFIER
    1587                                {
    1588                                mIDENTIFIER();
    1589
    1590                                }
    1591                                break;
    1592                        case 15 :
    1593                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:105: SAFEDEREF
    1594                                {
    1595                                mSAFEDEREF();
    1596
    1597                                }
    1598                                break;
    1599                        case 16 :
    1600                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:115: WS
    1601                                {
    1602                                mWS();
    1603
    1604                                }
    1605                                break;
    1606                        case 17 :
    1607                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:118: STRING
    1608                                {
    1609                                mSTRING();
    1610
    1611                                }
    1612                                break;
    1613                        case 18 :
    1614                                // /home/jochen/git/upstream/tapestry5/beanmodel/src/main/antlr/org/apache/tapestry5/internal/antlr/PropertyExpressionLexer.g:1:125: NUMBER_OR_RANGEOP
    1615                                {
    1616                                mNUMBER_OR_RANGEOP();
    1617
    1618                                }
    1619                                break;
    1620
    1621                }
    1622        }
    1623
    1624
    1625
    1626}