| #!/usr/bin/env python |
| # |
| # Copyright 2007 Google Inc. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| |
| |
| import sys |
| from antlr3 import * |
| from antlr3.compat import set, frozenset |
| |
| |
| |
| HIDDEN = BaseRecognizer.HIDDEN |
| |
| |
| THIRD=13 |
| SEPTEMBER=36 |
| WEDNESDAY=22 |
| JULY=34 |
| APRIL=31 |
| DIGITS=8 |
| OCTOBER=37 |
| MAY=32 |
| DAY=19 |
| MARCH=30 |
| EOF=-1 |
| MONTH=27 |
| FRIDAY=24 |
| UNKNOWN_TOKEN=45 |
| TIME=5 |
| SYNCHRONIZED=9 |
| QUARTER=40 |
| COMMA=10 |
| DIGIT=7 |
| FOURTH=14 |
| SECOND=12 |
| NOVEMBER=38 |
| SATURDAY=25 |
| TO=42 |
| EVERY=6 |
| FEBRUARY=29 |
| MONDAY=20 |
| SUNDAY=26 |
| TWO_DIGIT_HOUR_TIME=43 |
| JUNE=33 |
| OF=4 |
| JANUARY=28 |
| MINUTES=18 |
| FIFTH=15 |
| WS=44 |
| THURSDAY=23 |
| DECEMBER=39 |
| AUGUST=35 |
| FROM=41 |
| TUESDAY=21 |
| HOURS=17 |
| FIRST=11 |
| FOURTH_OR_FIFTH=16 |
| |
| |
| class GrocLexer(Lexer): |
| |
| grammarFileName = "Groc.g" |
| antlr_version = version_str_to_tuple("3.1.1") |
| antlr_version_str = "3.1.1" |
| |
| def __init__(self, input=None, state=None): |
| if state is None: |
| state = RecognizerSharedState() |
| Lexer.__init__(self, input, state) |
| |
| self.dfa26 = self.DFA26( |
| self, 26, |
| eot = self.DFA26_eot, |
| eof = self.DFA26_eof, |
| min = self.DFA26_min, |
| max = self.DFA26_max, |
| accept = self.DFA26_accept, |
| special = self.DFA26_special, |
| transition = self.DFA26_transition |
| ) |
| |
| |
| |
| |
| |
| |
| |
| def mTIME(self, ): |
| |
| try: |
| _type = TIME |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.mDIGIT() |
| self.match(58) |
| self.matchRange(48, 53) |
| self.mDIGIT() |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mTWO_DIGIT_HOUR_TIME(self, ): |
| |
| try: |
| _type = TWO_DIGIT_HOUR_TIME |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| |
| alt1 = 3 |
| LA1 = self.input.LA(1) |
| if LA1 == 48: |
| alt1 = 1 |
| elif LA1 == 49: |
| alt1 = 2 |
| elif LA1 == 50: |
| alt1 = 3 |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 1, 0, self.input) |
| |
| raise nvae |
| |
| if alt1 == 1: |
| |
| pass |
| |
| |
| pass |
| self.match(48) |
| self.mDIGIT() |
| |
| |
| |
| |
| |
| elif alt1 == 2: |
| |
| pass |
| |
| |
| pass |
| self.match(49) |
| self.mDIGIT() |
| |
| |
| |
| |
| |
| elif alt1 == 3: |
| |
| pass |
| |
| |
| pass |
| self.match(50) |
| self.matchRange(48, 51) |
| |
| |
| |
| |
| |
| |
| self.match(58) |
| |
| |
| pass |
| self.matchRange(48, 53) |
| self.mDIGIT() |
| |
| |
| |
| if self._state.backtracking == 0: |
| _type = TIME; |
| |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mSYNCHRONIZED(self, ): |
| |
| try: |
| _type = SYNCHRONIZED |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("synchronized") |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mFIRST(self, ): |
| |
| try: |
| _type = FIRST |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| alt2 = 2 |
| LA2_0 = self.input.LA(1) |
| |
| if (LA2_0 == 49) : |
| alt2 = 1 |
| elif (LA2_0 == 102) : |
| alt2 = 2 |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 2, 0, self.input) |
| |
| raise nvae |
| |
| if alt2 == 1: |
| |
| pass |
| self.match("1st") |
| |
| |
| elif alt2 == 2: |
| |
| pass |
| self.match("first") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mSECOND(self, ): |
| |
| try: |
| _type = SECOND |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| alt3 = 2 |
| LA3_0 = self.input.LA(1) |
| |
| if (LA3_0 == 50) : |
| alt3 = 1 |
| elif (LA3_0 == 115) : |
| alt3 = 2 |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 3, 0, self.input) |
| |
| raise nvae |
| |
| if alt3 == 1: |
| |
| pass |
| self.match("2nd") |
| |
| |
| elif alt3 == 2: |
| |
| pass |
| self.match("second") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mTHIRD(self, ): |
| |
| try: |
| _type = THIRD |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| alt4 = 2 |
| LA4_0 = self.input.LA(1) |
| |
| if (LA4_0 == 51) : |
| alt4 = 1 |
| elif (LA4_0 == 116) : |
| alt4 = 2 |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 4, 0, self.input) |
| |
| raise nvae |
| |
| if alt4 == 1: |
| |
| pass |
| self.match("3rd") |
| |
| |
| elif alt4 == 2: |
| |
| pass |
| self.match("third") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mFOURTH(self, ): |
| |
| try: |
| _type = FOURTH |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match("4th") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mFIFTH(self, ): |
| |
| try: |
| _type = FIFTH |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match("5th") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mFOURTH_OR_FIFTH(self, ): |
| |
| try: |
| _type = FOURTH_OR_FIFTH |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| alt5 = 2 |
| LA5_0 = self.input.LA(1) |
| |
| if (LA5_0 == 102) : |
| LA5_1 = self.input.LA(2) |
| |
| if (LA5_1 == 111) : |
| alt5 = 1 |
| elif (LA5_1 == 105) : |
| alt5 = 2 |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 5, 1, self.input) |
| |
| raise nvae |
| |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 5, 0, self.input) |
| |
| raise nvae |
| |
| if alt5 == 1: |
| |
| pass |
| |
| |
| pass |
| self.match("fourth") |
| if self._state.backtracking == 0: |
| _type = FOURTH; |
| |
| |
| |
| |
| |
| |
| elif alt5 == 2: |
| |
| pass |
| |
| |
| pass |
| self.match("fifth") |
| if self._state.backtracking == 0: |
| _type = FIFTH; |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mDAY(self, ): |
| |
| try: |
| _type = DAY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("day") |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mMONDAY(self, ): |
| |
| try: |
| _type = MONDAY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("mon") |
| |
| alt6 = 2 |
| LA6_0 = self.input.LA(1) |
| |
| if (LA6_0 == 100) : |
| alt6 = 1 |
| if alt6 == 1: |
| |
| pass |
| self.match("day") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mTUESDAY(self, ): |
| |
| try: |
| _type = TUESDAY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("tue") |
| |
| alt7 = 2 |
| LA7_0 = self.input.LA(1) |
| |
| if (LA7_0 == 115) : |
| alt7 = 1 |
| if alt7 == 1: |
| |
| pass |
| self.match("sday") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mWEDNESDAY(self, ): |
| |
| try: |
| _type = WEDNESDAY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("wed") |
| |
| alt8 = 2 |
| LA8_0 = self.input.LA(1) |
| |
| if (LA8_0 == 110) : |
| alt8 = 1 |
| if alt8 == 1: |
| |
| pass |
| self.match("nesday") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mTHURSDAY(self, ): |
| |
| try: |
| _type = THURSDAY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("thu") |
| |
| alt9 = 2 |
| LA9_0 = self.input.LA(1) |
| |
| if (LA9_0 == 114) : |
| alt9 = 1 |
| if alt9 == 1: |
| |
| pass |
| self.match("rsday") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mFRIDAY(self, ): |
| |
| try: |
| _type = FRIDAY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("fri") |
| |
| alt10 = 2 |
| LA10_0 = self.input.LA(1) |
| |
| if (LA10_0 == 100) : |
| alt10 = 1 |
| if alt10 == 1: |
| |
| pass |
| self.match("day") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mSATURDAY(self, ): |
| |
| try: |
| _type = SATURDAY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("sat") |
| |
| alt11 = 2 |
| LA11_0 = self.input.LA(1) |
| |
| if (LA11_0 == 117) : |
| alt11 = 1 |
| if alt11 == 1: |
| |
| pass |
| self.match("urday") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mSUNDAY(self, ): |
| |
| try: |
| _type = SUNDAY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("sun") |
| |
| alt12 = 2 |
| LA12_0 = self.input.LA(1) |
| |
| if (LA12_0 == 100) : |
| alt12 = 1 |
| if alt12 == 1: |
| |
| pass |
| self.match("day") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mJANUARY(self, ): |
| |
| try: |
| _type = JANUARY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("jan") |
| |
| alt13 = 2 |
| LA13_0 = self.input.LA(1) |
| |
| if (LA13_0 == 117) : |
| alt13 = 1 |
| if alt13 == 1: |
| |
| pass |
| self.match("uary") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mFEBRUARY(self, ): |
| |
| try: |
| _type = FEBRUARY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("feb") |
| |
| alt14 = 2 |
| LA14_0 = self.input.LA(1) |
| |
| if (LA14_0 == 114) : |
| alt14 = 1 |
| if alt14 == 1: |
| |
| pass |
| self.match("ruary") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mMARCH(self, ): |
| |
| try: |
| _type = MARCH |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("mar") |
| |
| alt15 = 2 |
| LA15_0 = self.input.LA(1) |
| |
| if (LA15_0 == 99) : |
| alt15 = 1 |
| if alt15 == 1: |
| |
| pass |
| self.match("ch") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mAPRIL(self, ): |
| |
| try: |
| _type = APRIL |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("apr") |
| |
| alt16 = 2 |
| LA16_0 = self.input.LA(1) |
| |
| if (LA16_0 == 105) : |
| alt16 = 1 |
| if alt16 == 1: |
| |
| pass |
| self.match("il") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mMAY(self, ): |
| |
| try: |
| _type = MAY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("may") |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mJUNE(self, ): |
| |
| try: |
| _type = JUNE |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("jun") |
| |
| alt17 = 2 |
| LA17_0 = self.input.LA(1) |
| |
| if (LA17_0 == 101) : |
| alt17 = 1 |
| if alt17 == 1: |
| |
| pass |
| self.match(101) |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mJULY(self, ): |
| |
| try: |
| _type = JULY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("jul") |
| |
| alt18 = 2 |
| LA18_0 = self.input.LA(1) |
| |
| if (LA18_0 == 121) : |
| alt18 = 1 |
| if alt18 == 1: |
| |
| pass |
| self.match(121) |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mAUGUST(self, ): |
| |
| try: |
| _type = AUGUST |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("aug") |
| |
| alt19 = 2 |
| LA19_0 = self.input.LA(1) |
| |
| if (LA19_0 == 117) : |
| alt19 = 1 |
| if alt19 == 1: |
| |
| pass |
| self.match("ust") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mSEPTEMBER(self, ): |
| |
| try: |
| _type = SEPTEMBER |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("sep") |
| |
| alt20 = 2 |
| LA20_0 = self.input.LA(1) |
| |
| if (LA20_0 == 116) : |
| alt20 = 1 |
| if alt20 == 1: |
| |
| pass |
| self.match("tember") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mOCTOBER(self, ): |
| |
| try: |
| _type = OCTOBER |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("oct") |
| |
| alt21 = 2 |
| LA21_0 = self.input.LA(1) |
| |
| if (LA21_0 == 111) : |
| alt21 = 1 |
| if alt21 == 1: |
| |
| pass |
| self.match("ober") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mNOVEMBER(self, ): |
| |
| try: |
| _type = NOVEMBER |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("nov") |
| |
| alt22 = 2 |
| LA22_0 = self.input.LA(1) |
| |
| if (LA22_0 == 101) : |
| alt22 = 1 |
| if alt22 == 1: |
| |
| pass |
| self.match("ember") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mDECEMBER(self, ): |
| |
| try: |
| _type = DECEMBER |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| self.match("dec") |
| |
| alt23 = 2 |
| LA23_0 = self.input.LA(1) |
| |
| if (LA23_0 == 101) : |
| alt23 = 1 |
| if alt23 == 1: |
| |
| pass |
| self.match("ember") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mMONTH(self, ): |
| |
| try: |
| _type = MONTH |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match("month") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mQUARTER(self, ): |
| |
| try: |
| _type = QUARTER |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match("quarter") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mEVERY(self, ): |
| |
| try: |
| _type = EVERY |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match("every") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mHOURS(self, ): |
| |
| try: |
| _type = HOURS |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match("hours") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mMINUTES(self, ): |
| |
| try: |
| _type = MINUTES |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| alt24 = 2 |
| LA24_0 = self.input.LA(1) |
| |
| if (LA24_0 == 109) : |
| LA24_1 = self.input.LA(2) |
| |
| if (LA24_1 == 105) : |
| LA24_2 = self.input.LA(3) |
| |
| if (LA24_2 == 110) : |
| LA24_3 = self.input.LA(4) |
| |
| if (LA24_3 == 115) : |
| alt24 = 1 |
| elif (LA24_3 == 117) : |
| alt24 = 2 |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 24, 3, self.input) |
| |
| raise nvae |
| |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 24, 2, self.input) |
| |
| raise nvae |
| |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 24, 1, self.input) |
| |
| raise nvae |
| |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 24, 0, self.input) |
| |
| raise nvae |
| |
| if alt24 == 1: |
| |
| pass |
| self.match("mins") |
| |
| |
| elif alt24 == 2: |
| |
| pass |
| self.match("minutes") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mCOMMA(self, ): |
| |
| try: |
| _type = COMMA |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match(44) |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mOF(self, ): |
| |
| try: |
| _type = OF |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match("of") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mFROM(self, ): |
| |
| try: |
| _type = FROM |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match("from") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mTO(self, ): |
| |
| try: |
| _type = TO |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.match("to") |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mWS(self, ): |
| |
| try: |
| _type = WS |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| if (9 <= self.input.LA(1) <= 10) or self.input.LA(1) == 13 or self.input.LA(1) == 32: |
| self.input.consume() |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| mse = MismatchedSetException(None, self.input) |
| self.recover(mse) |
| raise mse |
| |
| if self._state.backtracking == 0: |
| _channel=HIDDEN; |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mDIGIT(self, ): |
| |
| try: |
| _type = DIGIT |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.matchRange(48, 57) |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mDIGITS(self, ): |
| |
| try: |
| _type = DIGITS |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| alt25 = 4 |
| LA25_0 = self.input.LA(1) |
| |
| if ((48 <= LA25_0 <= 57)) : |
| LA25_1 = self.input.LA(2) |
| |
| if ((48 <= LA25_1 <= 57)) : |
| LA25_2 = self.input.LA(3) |
| |
| if ((48 <= LA25_2 <= 57)) : |
| LA25_4 = self.input.LA(4) |
| |
| if ((48 <= LA25_4 <= 57)) : |
| LA25_6 = self.input.LA(5) |
| |
| if ((48 <= LA25_6 <= 57)) and (self.synpred1_Groc()): |
| alt25 = 1 |
| else: |
| alt25 = 2 |
| else: |
| alt25 = 3 |
| else: |
| alt25 = 4 |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 25, 1, self.input) |
| |
| raise nvae |
| |
| else: |
| if self._state.backtracking > 0: |
| raise BacktrackingFailed |
| |
| nvae = NoViableAltException("", 25, 0, self.input) |
| |
| raise nvae |
| |
| if alt25 == 1: |
| |
| pass |
| |
| |
| pass |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| |
| |
| |
| |
| |
| elif alt25 == 2: |
| |
| pass |
| |
| |
| pass |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| |
| |
| |
| |
| |
| elif alt25 == 3: |
| |
| pass |
| |
| |
| pass |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| |
| |
| |
| |
| |
| elif alt25 == 4: |
| |
| pass |
| |
| |
| pass |
| self.mDIGIT() |
| self.mDIGIT() |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| |
| def mUNKNOWN_TOKEN(self, ): |
| |
| try: |
| _type = UNKNOWN_TOKEN |
| _channel = DEFAULT_CHANNEL |
| |
| |
| |
| pass |
| |
| |
| pass |
| self.matchAny() |
| |
| |
| |
| |
| |
| |
| self._state.type = _type |
| self._state.channel = _channel |
| |
| finally: |
| |
| pass |
| |
| |
| |
| |
| |
| def mTokens(self): |
| |
| alt26 = 42 |
| alt26 = self.dfa26.predict(self.input) |
| if alt26 == 1: |
| |
| pass |
| self.mTIME() |
| |
| |
| elif alt26 == 2: |
| |
| pass |
| self.mTWO_DIGIT_HOUR_TIME() |
| |
| |
| elif alt26 == 3: |
| |
| pass |
| self.mSYNCHRONIZED() |
| |
| |
| elif alt26 == 4: |
| |
| pass |
| self.mFIRST() |
| |
| |
| elif alt26 == 5: |
| |
| pass |
| self.mSECOND() |
| |
| |
| elif alt26 == 6: |
| |
| pass |
| self.mTHIRD() |
| |
| |
| elif alt26 == 7: |
| |
| pass |
| self.mFOURTH() |
| |
| |
| elif alt26 == 8: |
| |
| pass |
| self.mFIFTH() |
| |
| |
| elif alt26 == 9: |
| |
| pass |
| self.mFOURTH_OR_FIFTH() |
| |
| |
| elif alt26 == 10: |
| |
| pass |
| self.mDAY() |
| |
| |
| elif alt26 == 11: |
| |
| pass |
| self.mMONDAY() |
| |
| |
| elif alt26 == 12: |
| |
| pass |
| self.mTUESDAY() |
| |
| |
| elif alt26 == 13: |
| |
| pass |
| self.mWEDNESDAY() |
| |
| |
| elif alt26 == 14: |
| |
| pass |
| self.mTHURSDAY() |
| |
| |
| elif alt26 == 15: |
| |
| pass |
| self.mFRIDAY() |
| |
| |
| elif alt26 == 16: |
| |
| pass |
| self.mSATURDAY() |
| |
| |
| elif alt26 == 17: |
| |
| pass |
| self.mSUNDAY() |
| |
| |
| elif alt26 == 18: |
| |
| pass |
| self.mJANUARY() |
| |
| |
| elif alt26 == 19: |
| |
| pass |
| self.mFEBRUARY() |
| |
| |
| elif alt26 == 20: |
| |
| pass |
| self.mMARCH() |
| |
| |
| elif alt26 == 21: |
| |
| pass |
| self.mAPRIL() |
| |
| |
| elif alt26 == 22: |
| |
| pass |
| self.mMAY() |
| |
| |
| elif alt26 == 23: |
| |
| pass |
| self.mJUNE() |
| |
| |
| elif alt26 == 24: |
| |
| pass |
| self.mJULY() |
| |
| |
| elif alt26 == 25: |
| |
| pass |
| self.mAUGUST() |
| |
| |
| elif alt26 == 26: |
| |
| pass |
| self.mSEPTEMBER() |
| |
| |
| elif alt26 == 27: |
| |
| pass |
| self.mOCTOBER() |
| |
| |
| elif alt26 == 28: |
| |
| pass |
| self.mNOVEMBER() |
| |
| |
| elif alt26 == 29: |
| |
| pass |
| self.mDECEMBER() |
| |
| |
| elif alt26 == 30: |
| |
| pass |
| self.mMONTH() |
| |
| |
| elif alt26 == 31: |
| |
| pass |
| self.mQUARTER() |
| |
| |
| elif alt26 == 32: |
| |
| pass |
| self.mEVERY() |
| |
| |
| elif alt26 == 33: |
| |
| pass |
| self.mHOURS() |
| |
| |
| elif alt26 == 34: |
| |
| pass |
| self.mMINUTES() |
| |
| |
| elif alt26 == 35: |
| |
| pass |
| self.mCOMMA() |
| |
| |
| elif alt26 == 36: |
| |
| pass |
| self.mOF() |
| |
| |
| elif alt26 == 37: |
| |
| pass |
| self.mFROM() |
| |
| |
| elif alt26 == 38: |
| |
| pass |
| self.mTO() |
| |
| |
| elif alt26 == 39: |
| |
| pass |
| self.mWS() |
| |
| |
| elif alt26 == 40: |
| |
| pass |
| self.mDIGIT() |
| |
| |
| elif alt26 == 41: |
| |
| pass |
| self.mDIGITS() |
| |
| |
| elif alt26 == 42: |
| |
| pass |
| self.mUNKNOWN_TOKEN() |
| |
| |
| |
| |
| |
| |
| |
| def synpred1_Groc_fragment(self, ): |
| |
| |
| pass |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| |
| |
| |
| |
| |
| |
| |
| def synpred2_Groc_fragment(self, ): |
| |
| |
| pass |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| self.mDIGIT() |
| |
| |
| |
| |
| |
| |
| def synpred2_Groc(self): |
| self._state.backtracking += 1 |
| start = self.input.mark() |
| try: |
| self.synpred2_Groc_fragment() |
| except BacktrackingFailed: |
| success = False |
| else: |
| success = True |
| self.input.rewind(start) |
| self._state.backtracking -= 1 |
| return success |
| |
| def synpred1_Groc(self): |
| self._state.backtracking += 1 |
| start = self.input.mark() |
| try: |
| self.synpred1_Groc_fragment() |
| except BacktrackingFailed: |
| success = False |
| else: |
| success = True |
| self.input.rewind(start) |
| self._state.backtracking -= 1 |
| return success |
| |
| |
| |
| |
| |
| DFA26_eot = DFA.unpack( |
| u"\1\uffff\4\30\2\27\1\30\1\27\2\30\12\27\4\uffff\1\37\2\uffff\2" |
| u"\37\47\uffff\1\113\6\uffff" |
| ) |
| |
| DFA26_eof = DFA.unpack( |
| u"\114\uffff" |
| ) |
| |
| DFA26_min = DFA.unpack( |
| u"\1\0\4\60\1\141\1\145\1\60\1\150\2\60\2\141\1\145\1\141\1\160\1" |
| u"\143\1\157\1\165\1\166\1\157\4\uffff\1\72\2\uffff\2\72\4\uffff" |
| u"\1\143\2\uffff\1\146\1\uffff\1\151\2\uffff\1\151\5\uffff\1\156" |
| u"\1\162\3\uffff\1\154\17\uffff\1\164\6\uffff" |
| ) |
| |
| DFA26_max = DFA.unpack( |
| u"\1\uffff\1\72\1\163\1\156\1\162\1\171\1\162\1\164\1\165\1\164\1" |
| u"\72\1\145\1\157\1\145\2\165\1\146\1\157\1\165\1\166\1\157\4\uffff" |
| u"\1\72\2\uffff\2\72\4\uffff\1\160\2\uffff\1\162\1\uffff\1\157\2" |
| u"\uffff\1\165\5\uffff\1\156\1\171\3\uffff\1\156\17\uffff\1\164\6" |
| u"\uffff" |
| ) |
| |
| DFA26_accept = DFA.unpack( |
| u"\25\uffff\1\43\1\47\1\52\1\50\1\uffff\1\1\1\4\2\uffff\1\5\1\51" |
| u"\1\6\1\3\1\uffff\1\20\1\21\1\uffff\1\11\1\uffff\1\23\1\7\1\uffff" |
| u"\1\14\1\46\1\10\1\12\1\35\2\uffff\1\42\1\15\1\22\1\uffff\1\25\1" |
| u"\31\1\33\1\44\1\34\1\37\1\40\1\41\1\43\1\47\1\2\1\32\1\17\1\45" |
| u"\1\16\1\uffff\1\24\1\26\1\27\1\30\1\36\1\13" |
| ) |
| |
| DFA26_special = DFA.unpack( |
| u"\1\0\113\uffff" |
| ) |
| |
| |
| DFA26_transition = [ |
| DFA.unpack(u"\11\27\2\26\2\27\1\26\22\27\1\26\13\27\1\25\3\27\1\1" |
| u"\1\2\1\3\1\4\1\7\1\11\4\12\47\27\1\17\2\27\1\13\1\23\1\6\1\27\1" |
| u"\24\1\27\1\16\2\27\1\14\1\21\1\20\1\27\1\22\1\27\1\5\1\10\2\27" |
| u"\1\15\uff88\27"), |
| DFA.unpack(u"\12\31\1\32"), |
| DFA.unpack(u"\12\34\1\32\70\uffff\1\33"), |
| DFA.unpack(u"\4\35\6\37\1\32\63\uffff\1\36"), |
| DFA.unpack(u"\12\37\1\32\67\uffff\1\40"), |
| DFA.unpack(u"\1\43\3\uffff\1\42\17\uffff\1\44\3\uffff\1\41"), |
| DFA.unpack(u"\1\50\3\uffff\1\45\5\uffff\1\46\2\uffff\1\47"), |
| DFA.unpack(u"\12\37\1\32\71\uffff\1\51"), |
| DFA.unpack(u"\1\52\6\uffff\1\54\5\uffff\1\53"), |
| DFA.unpack(u"\12\37\1\32\71\uffff\1\55"), |
| DFA.unpack(u"\12\37\1\32"), |
| DFA.unpack(u"\1\56\3\uffff\1\57"), |
| DFA.unpack(u"\1\61\7\uffff\1\62\5\uffff\1\60"), |
| DFA.unpack(u"\1\63"), |
| DFA.unpack(u"\1\64\23\uffff\1\65"), |
| DFA.unpack(u"\1\66\4\uffff\1\67"), |
| DFA.unpack(u"\1\70\2\uffff\1\71"), |
| DFA.unpack(u"\1\72"), |
| DFA.unpack(u"\1\73"), |
| DFA.unpack(u"\1\74"), |
| DFA.unpack(u"\1\75"), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u"\1\100"), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u"\1\100"), |
| DFA.unpack(u"\1\100"), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u"\1\36\14\uffff\1\101"), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u"\1\46\13\uffff\1\33"), |
| DFA.unpack(u""), |
| DFA.unpack(u"\1\102\5\uffff\1\103"), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u"\1\40\13\uffff\1\104"), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u"\1\105"), |
| DFA.unpack(u"\1\106\6\uffff\1\107"), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u"\1\111\1\uffff\1\110"), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u"\1\112"), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u""), |
| DFA.unpack(u"") |
| ] |
| |
| |
| |
| class DFA26(DFA): |
| def specialStateTransition(self_, s, input): |
| |
| |
| |
| |
| |
| self = self_.recognizer |
| |
| _s = s |
| |
| if s == 0: |
| LA26_0 = input.LA(1) |
| |
| s = -1 |
| if (LA26_0 == 48): |
| s = 1 |
| |
| elif (LA26_0 == 49): |
| s = 2 |
| |
| elif (LA26_0 == 50): |
| s = 3 |
| |
| elif (LA26_0 == 51): |
| s = 4 |
| |
| elif (LA26_0 == 115): |
| s = 5 |
| |
| elif (LA26_0 == 102): |
| s = 6 |
| |
| elif (LA26_0 == 52): |
| s = 7 |
| |
| elif (LA26_0 == 116): |
| s = 8 |
| |
| elif (LA26_0 == 53): |
| s = 9 |
| |
| elif ((54 <= LA26_0 <= 57)): |
| s = 10 |
| |
| elif (LA26_0 == 100): |
| s = 11 |
| |
| elif (LA26_0 == 109): |
| s = 12 |
| |
| elif (LA26_0 == 119): |
| s = 13 |
| |
| elif (LA26_0 == 106): |
| s = 14 |
| |
| elif (LA26_0 == 97): |
| s = 15 |
| |
| elif (LA26_0 == 111): |
| s = 16 |
| |
| elif (LA26_0 == 110): |
| s = 17 |
| |
| elif (LA26_0 == 113): |
| s = 18 |
| |
| elif (LA26_0 == 101): |
| s = 19 |
| |
| elif (LA26_0 == 104): |
| s = 20 |
| |
| elif (LA26_0 == 44): |
| s = 21 |
| |
| elif ((9 <= LA26_0 <= 10) or LA26_0 == 13 or LA26_0 == 32): |
| s = 22 |
| |
| elif ((0 <= LA26_0 <= 8) or (11 <= LA26_0 <= 12) or (14 <= LA26_0 <= 31) or (33 <= LA26_0 <= 43) or (45 <= LA26_0 <= 47) or (58 <= LA26_0 <= 96) or (98 <= LA26_0 <= 99) or LA26_0 == 103 or LA26_0 == 105 or (107 <= LA26_0 <= 108) or LA26_0 == 112 or LA26_0 == 114 or (117 <= LA26_0 <= 118) or (120 <= LA26_0 <= 65535)): |
| s = 23 |
| |
| if s >= 0: |
| return s |
| |
| if self._state.backtracking >0: |
| raise BacktrackingFailed |
| nvae = NoViableAltException(self_.getDescription(), 26, _s, input) |
| self_.error(nvae) |
| raise nvae |
| |
| |
| |
| |
| def main(argv, stdin=sys.stdin, stdout=sys.stdout, stderr=sys.stderr): |
| from antlr3.main import LexerMain |
| main = LexerMain(GrocLexer) |
| main.stdin = stdin |
| main.stdout = stdout |
| main.stderr = stderr |
| main.execute(argv) |
| |
| |
| if __name__ == '__main__': |
| main(sys.argv) |