/* * #%L * Alfresco Remote API * %% * Copyright (C) 2005 - 2016 Alfresco Software Limited * %% * This file is part of the Alfresco software. * If the software was purchased under a paid Alfresco license, the terms of * the paid license agreement will prevail. Otherwise, the software is * provided under the following open source license terms: * * Alfresco is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Alfresco is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with Alfresco. If not, see . * #L% */ // $ANTLR 3.4 org/alfresco/rest/antlr/WhereClause.g 2013-05-24 09:01:14 package org.alfresco.rest.antlr; import java.util.Map; import java.util.HashMap; import org.alfresco.rest.framework.resource.parameters.where.InvalidQueryException; import org.alfresco.rest.framework.resource.parameters.where.WhereCompiler; import org.antlr.runtime.*; import java.util.Stack; import java.util.List; import java.util.ArrayList; @SuppressWarnings({"all", "warnings", "unchecked"}) public class WhereClauseLexer extends Lexer { public static final int EOF=-1; public static final int AND=4; public static final int BETWEEN=5; public static final int COMMA=6; public static final int EQUALS=7; public static final int EXISTS=8; public static final int GREATERTHAN=9; public static final int GREATERTHANOREQUALS=10; public static final int IDENTIFIER=11; public static final int IDENTIFIERDIGIT=12; public static final int IDENTIFIERLETTER=13; public static final int IN=14; public static final int LEFTPAREN=15; public static final int LESSTHAN=16; public static final int LESSTHANOREQUALS=17; public static final int MATCHES=18; public static final int NEGATION=19; public static final int OR=20; public static final int PROPERTYNAME=21; public static final int PROPERTYVALUE=22; public static final int RIGHTPAREN=23; public static final int SINGLEQUOTE=24; public static final int WS=25; @Override public void recover(RecognitionException e) { throw new InvalidQueryException(WhereCompiler.resolveMessage(e)); } // delegates // delegators public Lexer[] getDelegates() { return new Lexer[] {}; } public WhereClauseLexer() {} public WhereClauseLexer(CharStream input) { this(input, new RecognizerSharedState()); } public WhereClauseLexer(CharStream input, RecognizerSharedState state) { super(input,state); } public String getGrammarFileName() { return "org/alfresco/rest/antlr/WhereClause.g"; } // $ANTLR start "NEGATION" public final void mNEGATION() throws RecognitionException { try { int _type = NEGATION; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:72:9: ( ( 'not' | 'NOT' ) WS ) // org/alfresco/rest/antlr/WhereClause.g:72:11: ( 'not' | 'NOT' ) WS { // org/alfresco/rest/antlr/WhereClause.g:72:11: ( 'not' | 'NOT' ) int alt1=2; switch ( input.LA(1) ) { case 'n': { alt1=1; } break; case 'N': { alt1=2; } break; default: NoViableAltException nvae = new NoViableAltException("", 1, 0, input); throw nvae; } switch (alt1) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:72:12: 'not' { match("not"); } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:72:18: 'NOT' { match("NOT"); } break; } mWS(); } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "NEGATION" // $ANTLR start "EXISTS" public final void mEXISTS() throws RecognitionException { try { int _type = EXISTS; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:73:7: ( 'exists' | 'EXISTS' ) int alt2=2; switch ( input.LA(1) ) { case 'e': { alt2=1; } break; case 'E': { alt2=2; } break; default: NoViableAltException nvae = new NoViableAltException("", 2, 0, input); throw nvae; } switch (alt2) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:73:9: 'exists' { match("exists"); } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:73:18: 'EXISTS' { match("EXISTS"); } break; } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "EXISTS" // $ANTLR start "IN" public final void mIN() throws RecognitionException { try { int _type = IN; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:74:3: ( WS ( 'in' | 'IN' ) ) // org/alfresco/rest/antlr/WhereClause.g:74:5: WS ( 'in' | 'IN' ) { mWS(); // org/alfresco/rest/antlr/WhereClause.g:74:7: ( 'in' | 'IN' ) int alt3=2; switch ( input.LA(1) ) { case 'i': { alt3=1; } break; case 'I': { alt3=2; } break; default: NoViableAltException nvae = new NoViableAltException("", 3, 0, input); throw nvae; } switch (alt3) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:74:8: 'in' { match("in"); } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:74:13: 'IN' { match("IN"); } break; } } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "IN" // $ANTLR start "MATCHES" public final void mMATCHES() throws RecognitionException { try { int _type = MATCHES; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:75:8: ( WS ( 'matches' | 'MATCHES' ) ) // org/alfresco/rest/antlr/WhereClause.g:75:10: WS ( 'matches' | 'MATCHES' ) { mWS(); // org/alfresco/rest/antlr/WhereClause.g:75:12: ( 'matches' | 'MATCHES' ) int alt4=2; switch ( input.LA(1) ) { case 'm': { alt4=1; } break; case 'M': { alt4=2; } break; default: NoViableAltException nvae = new NoViableAltException("", 4, 0, input); throw nvae; } switch (alt4) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:75:13: 'matches' { match("matches"); } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:75:23: 'MATCHES' { match("MATCHES"); } break; } } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "MATCHES" // $ANTLR start "BETWEEN" public final void mBETWEEN() throws RecognitionException { try { int _type = BETWEEN; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:76:8: ( WS ( 'between' | 'BETWEEN' ) ) // org/alfresco/rest/antlr/WhereClause.g:76:10: WS ( 'between' | 'BETWEEN' ) { mWS(); // org/alfresco/rest/antlr/WhereClause.g:76:12: ( 'between' | 'BETWEEN' ) int alt5=2; switch ( input.LA(1) ) { case 'b': { alt5=1; } break; case 'B': { alt5=2; } break; default: NoViableAltException nvae = new NoViableAltException("", 5, 0, input); throw nvae; } switch (alt5) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:76:13: 'between' { match("between"); } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:76:23: 'BETWEEN' { match("BETWEEN"); } break; } } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "BETWEEN" // $ANTLR start "OR" public final void mOR() throws RecognitionException { try { int _type = OR; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:77:3: ( WS ( 'or' | 'OR' ) WS ) // org/alfresco/rest/antlr/WhereClause.g:77:5: WS ( 'or' | 'OR' ) WS { mWS(); // org/alfresco/rest/antlr/WhereClause.g:77:7: ( 'or' | 'OR' ) int alt6=2; switch ( input.LA(1) ) { case 'o': { alt6=1; } break; case 'O': { alt6=2; } break; default: NoViableAltException nvae = new NoViableAltException("", 6, 0, input); throw nvae; } switch (alt6) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:77:8: 'or' { match("or"); } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:77:13: 'OR' { match("OR"); } break; } mWS(); } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "OR" // $ANTLR start "AND" public final void mAND() throws RecognitionException { try { int _type = AND; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:78:4: ( WS ( 'and' | 'AND' ) WS ) // org/alfresco/rest/antlr/WhereClause.g:78:6: WS ( 'and' | 'AND' ) WS { mWS(); // org/alfresco/rest/antlr/WhereClause.g:78:8: ( 'and' | 'AND' ) int alt7=2; switch ( input.LA(1) ) { case 'a': { alt7=1; } break; case 'A': { alt7=2; } break; default: NoViableAltException nvae = new NoViableAltException("", 7, 0, input); throw nvae; } switch (alt7) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:78:9: 'and' { match("and"); } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:78:15: 'AND' { match("AND"); } break; } mWS(); } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "AND" // $ANTLR start "EQUALS" public final void mEQUALS() throws RecognitionException { try { int _type = EQUALS; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:79:7: ( ( WS )? '=' ( WS )? ) // org/alfresco/rest/antlr/WhereClause.g:79:9: ( WS )? '=' ( WS )? { // org/alfresco/rest/antlr/WhereClause.g:79:9: ( WS )? int alt8=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt8=1; } break; } switch (alt8) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:79:9: WS { mWS(); } break; } match('='); // org/alfresco/rest/antlr/WhereClause.g:79:15: ( WS )? int alt9=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt9=1; } break; } switch (alt9) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:79:15: WS { mWS(); } break; } } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "EQUALS" // $ANTLR start "LESSTHAN" public final void mLESSTHAN() throws RecognitionException { try { int _type = LESSTHAN; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:80:9: ( ( WS )? '<' ( WS )? ) // org/alfresco/rest/antlr/WhereClause.g:80:11: ( WS )? '<' ( WS )? { // org/alfresco/rest/antlr/WhereClause.g:80:11: ( WS )? int alt10=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt10=1; } break; } switch (alt10) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:80:11: WS { mWS(); } break; } match('<'); // org/alfresco/rest/antlr/WhereClause.g:80:17: ( WS )? int alt11=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt11=1; } break; } switch (alt11) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:80:17: WS { mWS(); } break; } } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "LESSTHAN" // $ANTLR start "GREATERTHAN" public final void mGREATERTHAN() throws RecognitionException { try { int _type = GREATERTHAN; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:81:12: ( ( WS )? '>' ( WS )? ) // org/alfresco/rest/antlr/WhereClause.g:81:14: ( WS )? '>' ( WS )? { // org/alfresco/rest/antlr/WhereClause.g:81:14: ( WS )? int alt12=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt12=1; } break; } switch (alt12) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:81:14: WS { mWS(); } break; } match('>'); // org/alfresco/rest/antlr/WhereClause.g:81:20: ( WS )? int alt13=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt13=1; } break; } switch (alt13) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:81:20: WS { mWS(); } break; } } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "GREATERTHAN" // $ANTLR start "LESSTHANOREQUALS" public final void mLESSTHANOREQUALS() throws RecognitionException { try { int _type = LESSTHANOREQUALS; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:82:17: ( ( WS )? '<=' ( WS )? ) // org/alfresco/rest/antlr/WhereClause.g:82:19: ( WS )? '<=' ( WS )? { // org/alfresco/rest/antlr/WhereClause.g:82:19: ( WS )? int alt14=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt14=1; } break; } switch (alt14) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:82:19: WS { mWS(); } break; } match("<="); // org/alfresco/rest/antlr/WhereClause.g:82:26: ( WS )? int alt15=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt15=1; } break; } switch (alt15) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:82:26: WS { mWS(); } break; } } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "LESSTHANOREQUALS" // $ANTLR start "GREATERTHANOREQUALS" public final void mGREATERTHANOREQUALS() throws RecognitionException { try { int _type = GREATERTHANOREQUALS; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:83:20: ( ( WS )? '>=' ( WS )? ) // org/alfresco/rest/antlr/WhereClause.g:83:22: ( WS )? '>=' ( WS )? { // org/alfresco/rest/antlr/WhereClause.g:83:22: ( WS )? int alt16=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt16=1; } break; } switch (alt16) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:83:22: WS { mWS(); } break; } match(">="); // org/alfresco/rest/antlr/WhereClause.g:83:29: ( WS )? int alt17=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt17=1; } break; } switch (alt17) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:83:29: WS { mWS(); } break; } } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "GREATERTHANOREQUALS" // $ANTLR start "LEFTPAREN" public final void mLEFTPAREN() throws RecognitionException { try { int _type = LEFTPAREN; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:84:10: ( '(' ) // org/alfresco/rest/antlr/WhereClause.g:84:12: '(' { match('('); } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "LEFTPAREN" // $ANTLR start "RIGHTPAREN" public final void mRIGHTPAREN() throws RecognitionException { try { int _type = RIGHTPAREN; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:85:11: ( ')' ) // org/alfresco/rest/antlr/WhereClause.g:85:13: ')' { match(')'); } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "RIGHTPAREN" // $ANTLR start "COMMA" public final void mCOMMA() throws RecognitionException { try { int _type = COMMA; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:86:6: ( ',' ) // org/alfresco/rest/antlr/WhereClause.g:86:8: ',' { match(','); } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "COMMA" // $ANTLR start "SINGLEQUOTE" public final void mSINGLEQUOTE() throws RecognitionException { try { int _type = SINGLEQUOTE; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:87:12: ( '\\'' ) // org/alfresco/rest/antlr/WhereClause.g:87:14: '\\'' { match('\''); } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "SINGLEQUOTE" // $ANTLR start "PROPERTYVALUE" public final void mPROPERTYVALUE() throws RecognitionException { try { int _type = PROPERTYVALUE; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:88:14: ( ( SINGLEQUOTE (~ SINGLEQUOTE | '\\\\' SINGLEQUOTE )* SINGLEQUOTE ) | ( IDENTIFIERDIGIT )+ ) int alt20=2; switch ( input.LA(1) ) { case '\'': { alt20=1; } break; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case '\u0660': case '\u0661': case '\u0662': case '\u0663': case '\u0664': case '\u0665': case '\u0666': case '\u0667': case '\u0668': case '\u0669': case '\u06F0': case '\u06F1': case '\u06F2': case '\u06F3': case '\u06F4': case '\u06F5': case '\u06F6': case '\u06F7': case '\u06F8': case '\u06F9': case '\u0966': case '\u0967': case '\u0968': case '\u0969': case '\u096A': case '\u096B': case '\u096C': case '\u096D': case '\u096E': case '\u096F': case '\u09E6': case '\u09E7': case '\u09E8': case '\u09E9': case '\u09EA': case '\u09EB': case '\u09EC': case '\u09ED': case '\u09EE': case '\u09EF': case '\u0A66': case '\u0A67': case '\u0A68': case '\u0A69': case '\u0A6A': case '\u0A6B': case '\u0A6C': case '\u0A6D': case '\u0A6E': case '\u0A6F': case '\u0AE6': case '\u0AE7': case '\u0AE8': case '\u0AE9': case '\u0AEA': case '\u0AEB': case '\u0AEC': case '\u0AED': case '\u0AEE': case '\u0AEF': case '\u0B66': case '\u0B67': case '\u0B68': case '\u0B69': case '\u0B6A': case '\u0B6B': case '\u0B6C': case '\u0B6D': case '\u0B6E': case '\u0B6F': case '\u0BE7': case '\u0BE8': case '\u0BE9': case '\u0BEA': case '\u0BEB': case '\u0BEC': case '\u0BED': case '\u0BEE': case '\u0BEF': case '\u0C66': case '\u0C67': case '\u0C68': case '\u0C69': case '\u0C6A': case '\u0C6B': case '\u0C6C': case '\u0C6D': case '\u0C6E': case '\u0C6F': case '\u0CE6': case '\u0CE7': case '\u0CE8': case '\u0CE9': case '\u0CEA': case '\u0CEB': case '\u0CEC': case '\u0CED': case '\u0CEE': case '\u0CEF': case '\u0D66': case '\u0D67': case '\u0D68': case '\u0D69': case '\u0D6A': case '\u0D6B': case '\u0D6C': case '\u0D6D': case '\u0D6E': case '\u0D6F': case '\u0E50': case '\u0E51': case '\u0E52': case '\u0E53': case '\u0E54': case '\u0E55': case '\u0E56': case '\u0E57': case '\u0E58': case '\u0E59': case '\u0ED0': case '\u0ED1': case '\u0ED2': case '\u0ED3': case '\u0ED4': case '\u0ED5': case '\u0ED6': case '\u0ED7': case '\u0ED8': case '\u0ED9': case '\u1040': case '\u1041': case '\u1042': case '\u1043': case '\u1044': case '\u1045': case '\u1046': case '\u1047': case '\u1048': case '\u1049': { alt20=2; } break; default: NoViableAltException nvae = new NoViableAltException("", 20, 0, input); throw nvae; } switch (alt20) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:88:16: ( SINGLEQUOTE (~ SINGLEQUOTE | '\\\\' SINGLEQUOTE )* SINGLEQUOTE ) { // org/alfresco/rest/antlr/WhereClause.g:88:16: ( SINGLEQUOTE (~ SINGLEQUOTE | '\\\\' SINGLEQUOTE )* SINGLEQUOTE ) // org/alfresco/rest/antlr/WhereClause.g:88:17: SINGLEQUOTE (~ SINGLEQUOTE | '\\\\' SINGLEQUOTE )* SINGLEQUOTE { mSINGLEQUOTE(); // org/alfresco/rest/antlr/WhereClause.g:88:29: (~ SINGLEQUOTE | '\\\\' SINGLEQUOTE )* loop18: do { int alt18=3; int LA18_0 = input.LA(1); if ( (LA18_0=='\\') ) { int LA18_2 = input.LA(2); if ( (LA18_2=='\'') ) { int LA18_4 = input.LA(3); if ( ((LA18_4 >= '\u0000' && LA18_4 <= '\uFFFF')) ) { alt18=2; } else { alt18=1; } } else if ( ((LA18_2 >= '\u0000' && LA18_2 <= '&')||(LA18_2 >= '(' && LA18_2 <= '\uFFFF')) ) { alt18=1; } } else if ( ((LA18_0 >= '\u0000' && LA18_0 <= '&')||(LA18_0 >= '(' && LA18_0 <= '[')||(LA18_0 >= ']' && LA18_0 <= '\uFFFF')) ) { alt18=1; } switch (alt18) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:88:30: ~ SINGLEQUOTE { if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '\u0017')||(input.LA(1) >= '\u0019' && input.LA(1) <= '\uFFFF') ) { input.consume(); } else { MismatchedSetException mse = new MismatchedSetException(null,input); recover(mse); throw mse; } } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:88:43: '\\\\' SINGLEQUOTE { match('\\'); mSINGLEQUOTE(); } break; default : break loop18; } } while (true); mSINGLEQUOTE(); } } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:88:75: ( IDENTIFIERDIGIT )+ { // org/alfresco/rest/antlr/WhereClause.g:88:75: ( IDENTIFIERDIGIT )+ int cnt19=0; loop19: do { int alt19=2; switch ( input.LA(1) ) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case '\u0660': case '\u0661': case '\u0662': case '\u0663': case '\u0664': case '\u0665': case '\u0666': case '\u0667': case '\u0668': case '\u0669': case '\u06F0': case '\u06F1': case '\u06F2': case '\u06F3': case '\u06F4': case '\u06F5': case '\u06F6': case '\u06F7': case '\u06F8': case '\u06F9': case '\u0966': case '\u0967': case '\u0968': case '\u0969': case '\u096A': case '\u096B': case '\u096C': case '\u096D': case '\u096E': case '\u096F': case '\u09E6': case '\u09E7': case '\u09E8': case '\u09E9': case '\u09EA': case '\u09EB': case '\u09EC': case '\u09ED': case '\u09EE': case '\u09EF': case '\u0A66': case '\u0A67': case '\u0A68': case '\u0A69': case '\u0A6A': case '\u0A6B': case '\u0A6C': case '\u0A6D': case '\u0A6E': case '\u0A6F': case '\u0AE6': case '\u0AE7': case '\u0AE8': case '\u0AE9': case '\u0AEA': case '\u0AEB': case '\u0AEC': case '\u0AED': case '\u0AEE': case '\u0AEF': case '\u0B66': case '\u0B67': case '\u0B68': case '\u0B69': case '\u0B6A': case '\u0B6B': case '\u0B6C': case '\u0B6D': case '\u0B6E': case '\u0B6F': case '\u0BE7': case '\u0BE8': case '\u0BE9': case '\u0BEA': case '\u0BEB': case '\u0BEC': case '\u0BED': case '\u0BEE': case '\u0BEF': case '\u0C66': case '\u0C67': case '\u0C68': case '\u0C69': case '\u0C6A': case '\u0C6B': case '\u0C6C': case '\u0C6D': case '\u0C6E': case '\u0C6F': case '\u0CE6': case '\u0CE7': case '\u0CE8': case '\u0CE9': case '\u0CEA': case '\u0CEB': case '\u0CEC': case '\u0CED': case '\u0CEE': case '\u0CEF': case '\u0D66': case '\u0D67': case '\u0D68': case '\u0D69': case '\u0D6A': case '\u0D6B': case '\u0D6C': case '\u0D6D': case '\u0D6E': case '\u0D6F': case '\u0E50': case '\u0E51': case '\u0E52': case '\u0E53': case '\u0E54': case '\u0E55': case '\u0E56': case '\u0E57': case '\u0E58': case '\u0E59': case '\u0ED0': case '\u0ED1': case '\u0ED2': case '\u0ED3': case '\u0ED4': case '\u0ED5': case '\u0ED6': case '\u0ED7': case '\u0ED8': case '\u0ED9': case '\u1040': case '\u1041': case '\u1042': case '\u1043': case '\u1044': case '\u1045': case '\u1046': case '\u1047': case '\u1048': case '\u1049': { alt19=1; } break; } switch (alt19) { case 1 : // org/alfresco/rest/antlr/WhereClause.g: { if ( (input.LA(1) >= '0' && input.LA(1) <= '9')||(input.LA(1) >= '\u0660' && input.LA(1) <= '\u0669')||(input.LA(1) >= '\u06F0' && input.LA(1) <= '\u06F9')||(input.LA(1) >= '\u0966' && input.LA(1) <= '\u096F')||(input.LA(1) >= '\u09E6' && input.LA(1) <= '\u09EF')||(input.LA(1) >= '\u0A66' && input.LA(1) <= '\u0A6F')||(input.LA(1) >= '\u0AE6' && input.LA(1) <= '\u0AEF')||(input.LA(1) >= '\u0B66' && input.LA(1) <= '\u0B6F')||(input.LA(1) >= '\u0BE7' && input.LA(1) <= '\u0BEF')||(input.LA(1) >= '\u0C66' && input.LA(1) <= '\u0C6F')||(input.LA(1) >= '\u0CE6' && input.LA(1) <= '\u0CEF')||(input.LA(1) >= '\u0D66' && input.LA(1) <= '\u0D6F')||(input.LA(1) >= '\u0E50' && input.LA(1) <= '\u0E59')||(input.LA(1) >= '\u0ED0' && input.LA(1) <= '\u0ED9')||(input.LA(1) >= '\u1040' && input.LA(1) <= '\u1049') ) { input.consume(); } else { MismatchedSetException mse = new MismatchedSetException(null,input); recover(mse); throw mse; } } break; default : if ( cnt19 >= 1 ) break loop19; EarlyExitException eee = new EarlyExitException(19, input); throw eee; } cnt19++; } while (true); } break; } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "PROPERTYVALUE" // $ANTLR start "PROPERTYNAME" public final void mPROPERTYNAME() throws RecognitionException { try { int _type = PROPERTYNAME; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:89:13: ( ( '/' )? IDENTIFIER ( '/' IDENTIFIER )* ) // org/alfresco/rest/antlr/WhereClause.g:89:15: ( '/' )? IDENTIFIER ( '/' IDENTIFIER )* { // org/alfresco/rest/antlr/WhereClause.g:89:15: ( '/' )? int alt21=2; switch ( input.LA(1) ) { case '/': { alt21=1; } break; } switch (alt21) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:89:15: '/' { match('/'); } break; } mIDENTIFIER(); // org/alfresco/rest/antlr/WhereClause.g:89:31: ( '/' IDENTIFIER )* loop22: do { int alt22=2; switch ( input.LA(1) ) { case '/': { alt22=1; } break; } switch (alt22) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:89:32: '/' IDENTIFIER { match('/'); mIDENTIFIER(); } break; default : break loop22; } } while (true); } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "PROPERTYNAME" // $ANTLR start "IDENTIFIER" public final void mIDENTIFIER() throws RecognitionException { try { // org/alfresco/rest/antlr/WhereClause.g:90:21: ( ( IDENTIFIERLETTER ( IDENTIFIERLETTER | IDENTIFIERDIGIT )* ) ) // org/alfresco/rest/antlr/WhereClause.g:90:23: ( IDENTIFIERLETTER ( IDENTIFIERLETTER | IDENTIFIERDIGIT )* ) { // org/alfresco/rest/antlr/WhereClause.g:90:23: ( IDENTIFIERLETTER ( IDENTIFIERLETTER | IDENTIFIERDIGIT )* ) // org/alfresco/rest/antlr/WhereClause.g:90:24: IDENTIFIERLETTER ( IDENTIFIERLETTER | IDENTIFIERDIGIT )* { mIDENTIFIERLETTER(); // org/alfresco/rest/antlr/WhereClause.g:90:41: ( IDENTIFIERLETTER | IDENTIFIERDIGIT )* loop23: do { int alt23=2; int LA23_0 = input.LA(1); if ( ((LA23_0 >= '0' && LA23_0 <= '9')||(LA23_0 >= 'A' && LA23_0 <= 'Z')||LA23_0=='_'||(LA23_0 >= 'a' && LA23_0 <= 'z')||(LA23_0 >= '\u00C0' && LA23_0 <= '\u00D6')||(LA23_0 >= '\u00D8' && LA23_0 <= '\u00F6')||(LA23_0 >= '\u00F8' && LA23_0 <= '\u1FFF')||(LA23_0 >= '\u3040' && LA23_0 <= '\u318F')||(LA23_0 >= '\u3300' && LA23_0 <= '\u337F')||(LA23_0 >= '\u3400' && LA23_0 <= '\u3D2D')||(LA23_0 >= '\u4E00' && LA23_0 <= '\u9FFF')||(LA23_0 >= '\uF900' && LA23_0 <= '\uFAFF')) ) { alt23=1; } switch (alt23) { case 1 : // org/alfresco/rest/antlr/WhereClause.g: { if ( (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') ) { input.consume(); } else { MismatchedSetException mse = new MismatchedSetException(null,input); recover(mse); throw mse; } } break; default : break loop23; } } while (true); } } } finally { // do for sure before leaving } } // $ANTLR end "IDENTIFIER" // $ANTLR start "WS" public final void mWS() throws RecognitionException { try { int _type = WS; int _channel = DEFAULT_TOKEN_CHANNEL; // org/alfresco/rest/antlr/WhereClause.g:91:4: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) // org/alfresco/rest/antlr/WhereClause.g:91:6: ( ' ' | '\\t' | '\\r' | '\\n' )+ { // org/alfresco/rest/antlr/WhereClause.g:91:6: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt24=0; loop24: do { int alt24=2; switch ( input.LA(1) ) { case '\t': case '\n': case '\r': case ' ': { alt24=1; } break; } switch (alt24) { case 1 : // org/alfresco/rest/antlr/WhereClause.g: { if ( (input.LA(1) >= '\t' && input.LA(1) <= '\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) { input.consume(); } else { MismatchedSetException mse = new MismatchedSetException(null,input); recover(mse); throw mse; } } break; default : if ( cnt24 >= 1 ) break loop24; EarlyExitException eee = new EarlyExitException(24, input); throw eee; } cnt24++; } while (true); _channel = HIDDEN; } state.type = _type; state.channel = _channel; } finally { // do for sure before leaving } } // $ANTLR end "WS" // $ANTLR start "IDENTIFIERLETTER" public final void mIDENTIFIERLETTER() throws RecognitionException { try { // org/alfresco/rest/antlr/WhereClause.g:93:5: ( '\\u0041' .. '\\u005a' | '\\u005f' | '\\u0061' .. '\\u007a' | '\\u00c0' .. '\\u00d6' | '\\u00d8' .. '\\u00f6' | '\\u00f8' .. '\\u00ff' | '\\u0100' .. '\\u1fff' | '\\u3040' .. '\\u318f' | '\\u3300' .. '\\u337f' | '\\u3400' .. '\\u3d2d' | '\\u4e00' .. '\\u9fff' | '\\uf900' .. '\\ufaff' ) // org/alfresco/rest/antlr/WhereClause.g: { if ( (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') ) { input.consume(); } else { MismatchedSetException mse = new MismatchedSetException(null,input); recover(mse); throw mse; } } } finally { // do for sure before leaving } } // $ANTLR end "IDENTIFIERLETTER" // $ANTLR start "IDENTIFIERDIGIT" public final void mIDENTIFIERDIGIT() throws RecognitionException { try { // org/alfresco/rest/antlr/WhereClause.g:107:5: ( '\\u0030' .. '\\u0039' | '\\u0660' .. '\\u0669' | '\\u06f0' .. '\\u06f9' | '\\u0966' .. '\\u096f' | '\\u09e6' .. '\\u09ef' | '\\u0a66' .. '\\u0a6f' | '\\u0ae6' .. '\\u0aef' | '\\u0b66' .. '\\u0b6f' | '\\u0be7' .. '\\u0bef' | '\\u0c66' .. '\\u0c6f' | '\\u0ce6' .. '\\u0cef' | '\\u0d66' .. '\\u0d6f' | '\\u0e50' .. '\\u0e59' | '\\u0ed0' .. '\\u0ed9' | '\\u1040' .. '\\u1049' ) // org/alfresco/rest/antlr/WhereClause.g: { if ( (input.LA(1) >= '0' && input.LA(1) <= '9')||(input.LA(1) >= '\u0660' && input.LA(1) <= '\u0669')||(input.LA(1) >= '\u06F0' && input.LA(1) <= '\u06F9')||(input.LA(1) >= '\u0966' && input.LA(1) <= '\u096F')||(input.LA(1) >= '\u09E6' && input.LA(1) <= '\u09EF')||(input.LA(1) >= '\u0A66' && input.LA(1) <= '\u0A6F')||(input.LA(1) >= '\u0AE6' && input.LA(1) <= '\u0AEF')||(input.LA(1) >= '\u0B66' && input.LA(1) <= '\u0B6F')||(input.LA(1) >= '\u0BE7' && input.LA(1) <= '\u0BEF')||(input.LA(1) >= '\u0C66' && input.LA(1) <= '\u0C6F')||(input.LA(1) >= '\u0CE6' && input.LA(1) <= '\u0CEF')||(input.LA(1) >= '\u0D66' && input.LA(1) <= '\u0D6F')||(input.LA(1) >= '\u0E50' && input.LA(1) <= '\u0E59')||(input.LA(1) >= '\u0ED0' && input.LA(1) <= '\u0ED9')||(input.LA(1) >= '\u1040' && input.LA(1) <= '\u1049') ) { input.consume(); } else { MismatchedSetException mse = new MismatchedSetException(null,input); recover(mse); throw mse; } } } finally { // do for sure before leaving } } // $ANTLR end "IDENTIFIERDIGIT" public void mTokens() throws RecognitionException { // org/alfresco/rest/antlr/WhereClause.g:1:8: ( NEGATION | EXISTS | IN | MATCHES | BETWEEN | OR | AND | EQUALS | LESSTHAN | GREATERTHAN | LESSTHANOREQUALS | GREATERTHANOREQUALS | LEFTPAREN | RIGHTPAREN | COMMA | SINGLEQUOTE | PROPERTYVALUE | PROPERTYNAME | WS ) int alt25=19; alt25 = dfa25.predict(input); switch (alt25) { case 1 : // org/alfresco/rest/antlr/WhereClause.g:1:10: NEGATION { mNEGATION(); } break; case 2 : // org/alfresco/rest/antlr/WhereClause.g:1:19: EXISTS { mEXISTS(); } break; case 3 : // org/alfresco/rest/antlr/WhereClause.g:1:26: IN { mIN(); } break; case 4 : // org/alfresco/rest/antlr/WhereClause.g:1:29: MATCHES { mMATCHES(); } break; case 5 : // org/alfresco/rest/antlr/WhereClause.g:1:37: BETWEEN { mBETWEEN(); } break; case 6 : // org/alfresco/rest/antlr/WhereClause.g:1:45: OR { mOR(); } break; case 7 : // org/alfresco/rest/antlr/WhereClause.g:1:48: AND { mAND(); } break; case 8 : // org/alfresco/rest/antlr/WhereClause.g:1:52: EQUALS { mEQUALS(); } break; case 9 : // org/alfresco/rest/antlr/WhereClause.g:1:59: LESSTHAN { mLESSTHAN(); } break; case 10 : // org/alfresco/rest/antlr/WhereClause.g:1:68: GREATERTHAN { mGREATERTHAN(); } break; case 11 : // org/alfresco/rest/antlr/WhereClause.g:1:80: LESSTHANOREQUALS { mLESSTHANOREQUALS(); } break; case 12 : // org/alfresco/rest/antlr/WhereClause.g:1:97: GREATERTHANOREQUALS { mGREATERTHANOREQUALS(); } break; case 13 : // org/alfresco/rest/antlr/WhereClause.g:1:117: LEFTPAREN { mLEFTPAREN(); } break; case 14 : // org/alfresco/rest/antlr/WhereClause.g:1:127: RIGHTPAREN { mRIGHTPAREN(); } break; case 15 : // org/alfresco/rest/antlr/WhereClause.g:1:138: COMMA { mCOMMA(); } break; case 16 : // org/alfresco/rest/antlr/WhereClause.g:1:144: SINGLEQUOTE { mSINGLEQUOTE(); } break; case 17 : // org/alfresco/rest/antlr/WhereClause.g:1:156: PROPERTYVALUE { mPROPERTYVALUE(); } break; case 18 : // org/alfresco/rest/antlr/WhereClause.g:1:170: PROPERTYNAME { mPROPERTYNAME(); } break; case 19 : // org/alfresco/rest/antlr/WhereClause.g:1:183: WS { mWS(); } break; } } protected DFA25 dfa25 = new DFA25(this); static final String DFA25_eotS = "\1\uffff\4\16\1\24\1\uffff\1\33\1\35\3\uffff\1\36\1\17\2\uffff\4"+ "\16\13\uffff\1\17\4\16\1\uffff\4\16\2\53\1\uffff"; static final String DFA25_eofS = "\54\uffff"; static final String DFA25_minS = "\1\11\1\157\1\117\1\170\1\130\1\11\1\uffff\2\75\3\uffff\1\0\1\57"+ "\2\uffff\1\164\1\124\1\151\1\111\13\uffff\1\57\2\11\1\163\1\123"+ "\1\uffff\1\164\1\124\1\163\1\123\2\57\1\uffff"; static final String DFA25_maxS = "\1\ufaff\1\157\1\117\1\170\1\130\1\157\1\uffff\2\75\3\uffff\1\uffff"+ "\1\ufaff\2\uffff\1\164\1\124\1\151\1\111\13\uffff\1\ufaff\2\40\1"+ "\163\1\123\1\uffff\1\164\1\124\1\163\1\123\2\ufaff\1\uffff"; static final String DFA25_acceptS = "\6\uffff\1\10\2\uffff\1\15\1\16\1\17\2\uffff\1\22\1\21\4\uffff\1"+ "\23\1\3\1\4\1\5\1\6\1\7\1\13\1\11\1\14\1\12\1\20\5\uffff\1\1\6\uffff"+ "\1\2"; static final String DFA25_specialS = "\14\uffff\1\0\37\uffff}>"; static final String[] DFA25_transitionS = { "\2\5\2\uffff\1\5\22\uffff\1\5\6\uffff\1\14\1\11\1\12\2\uffff"+ "\1\13\2\uffff\1\16\12\17\2\uffff\1\7\1\6\1\10\2\uffff\4\16\1"+ "\4\10\16\1\2\14\16\4\uffff\1\16\1\uffff\4\16\1\3\10\16\1\1\14"+ "\16\105\uffff\27\16\1\uffff\37\16\1\uffff\u0568\16\12\15\u0086"+ "\16\12\15\u026c\16\12\15\166\16\12\15\166\16\12\15\166\16\12"+ "\15\166\16\12\15\167\16\11\15\166\16\12\15\166\16\12\15\166"+ "\16\12\15\u00e0\16\12\15\166\16\12\15\u0166\16\12\15\u0fb6\16"+ "\u1040\uffff\u0150\16\u0170\uffff\u0080\16\u0080\uffff\u092e"+ "\16\u10d2\uffff\u5200\16\u5900\uffff\u0200\16", "\1\20", "\1\21", "\1\22", "\1\23", "\2\5\2\uffff\1\5\22\uffff\1\5\33\uffff\1\7\1\6\1\10\2\uffff"+ "\1\31\1\27\6\uffff\1\25\3\uffff\1\26\1\uffff\1\30\21\uffff\1"+ "\31\1\27\6\uffff\1\25\3\uffff\1\26\1\uffff\1\30", "", "\1\32", "\1\34", "", "", "", "\0\17", "\1\16\12\37\7\uffff\32\16\4\uffff\1\16\1\uffff\32\16\105\uffff"+ "\27\16\1\uffff\37\16\1\uffff\u0568\16\12\37\u0086\16\12\37\u026c"+ "\16\12\37\166\16\12\37\166\16\12\37\166\16\12\37\166\16\12\37"+ "\167\16\11\37\166\16\12\37\166\16\12\37\166\16\12\37\u00e0\16"+ "\12\37\166\16\12\37\u0166\16\12\37\u0fb6\16\u1040\uffff\u0150"+ "\16\u0170\uffff\u0080\16\u0080\uffff\u092e\16\u10d2\uffff\u5200"+ "\16\u5900\uffff\u0200\16", "", "", "\1\40", "\1\41", "\1\42", "\1\43", "", "", "", "", "", "", "", "", "", "", "", "\1\16\12\37\7\uffff\32\16\4\uffff\1\16\1\uffff\32\16\105\uffff"+ "\27\16\1\uffff\37\16\1\uffff\u0568\16\12\37\u0086\16\12\37\u026c"+ "\16\12\37\166\16\12\37\166\16\12\37\166\16\12\37\166\16\12\37"+ "\167\16\11\37\166\16\12\37\166\16\12\37\166\16\12\37\u00e0\16"+ "\12\37\166\16\12\37\u0166\16\12\37\u0fb6\16\u1040\uffff\u0150"+ "\16\u0170\uffff\u0080\16\u0080\uffff\u092e\16\u10d2\uffff\u5200"+ "\16\u5900\uffff\u0200\16", "\2\44\2\uffff\1\44\22\uffff\1\44", "\2\44\2\uffff\1\44\22\uffff\1\44", "\1\45", "\1\46", "", "\1\47", "\1\50", "\1\51", "\1\52", "\13\16\7\uffff\32\16\4\uffff\1\16\1\uffff\32\16\105\uffff\27"+ "\16\1\uffff\37\16\1\uffff\u1f08\16\u1040\uffff\u0150\16\u0170"+ "\uffff\u0080\16\u0080\uffff\u092e\16\u10d2\uffff\u5200\16\u5900"+ "\uffff\u0200\16", "\13\16\7\uffff\32\16\4\uffff\1\16\1\uffff\32\16\105\uffff\27"+ "\16\1\uffff\37\16\1\uffff\u1f08\16\u1040\uffff\u0150\16\u0170"+ "\uffff\u0080\16\u0080\uffff\u092e\16\u10d2\uffff\u5200\16\u5900"+ "\uffff\u0200\16", "" }; static final short[] DFA25_eot = DFA.unpackEncodedString(DFA25_eotS); static final short[] DFA25_eof = DFA.unpackEncodedString(DFA25_eofS); static final char[] DFA25_min = DFA.unpackEncodedStringToUnsignedChars(DFA25_minS); static final char[] DFA25_max = DFA.unpackEncodedStringToUnsignedChars(DFA25_maxS); static final short[] DFA25_accept = DFA.unpackEncodedString(DFA25_acceptS); static final short[] DFA25_special = DFA.unpackEncodedString(DFA25_specialS); static final short[][] DFA25_transition; static { int numStates = DFA25_transitionS.length; DFA25_transition = new short[numStates][]; for (int i=0; i= '\u0000' && LA25_12 <= '\uFFFF')) ) {s = 15;} else s = 30; if ( s>=0 ) return s; break; } NoViableAltException nvae = new NoViableAltException(getDescription(), 25, _s, input); error(nvae); throw nvae; } } }