1# Generated from gn.g4 by ANTLR 4.7.1 2# encoding: utf-8 3from __future__ import print_function 4from antlr4 import * 5from io import StringIO 6import sys 7 8 9def serializedATN(): 10 with StringIO() as buf: 11 buf.write(u"\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2") 12 buf.write(u"\24\u008e\b\1\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6") 13 buf.write(u"\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t\13\4\f\t\f\4") 14 buf.write(u"\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t") 15 buf.write(u"\22\4\23\t\23\4\24\t\24\4\25\t\25\3\2\3\2\3\3\3\3\3\4") 16 buf.write(u"\3\4\3\4\3\5\3\5\3\6\3\6\3\7\3\7\3\b\3\b\3\t\3\t\3\n") 17 buf.write(u"\3\n\3\13\3\13\3\13\3\13\3\13\3\f\3\f\3\f\3\f\3\f\5\f") 18 buf.write(u"I\n\f\3\r\3\r\3\16\3\16\3\16\3\16\3\16\3\16\3\16\3\16") 19 buf.write(u"\3\16\3\16\3\16\3\16\3\16\3\16\5\16[\n\16\3\17\3\17\3") 20 buf.write(u"\17\7\17`\n\17\f\17\16\17c\13\17\3\20\5\20f\n\20\3\20") 21 buf.write(u"\6\20i\n\20\r\20\16\20j\3\21\3\21\3\21\3\21\7\21q\n\21") 22 buf.write(u"\f\21\16\21t\13\21\3\21\3\21\3\22\3\22\3\23\5\23{\n\23") 23 buf.write(u"\3\24\3\24\7\24\177\n\24\f\24\16\24\u0082\13\24\3\24") 24 buf.write(u"\5\24\u0085\n\24\3\24\3\24\3\24\3\24\3\25\3\25\3\25\3") 25 buf.write(u"\25\2\2\26\3\3\5\4\7\5\t\6\13\7\r\b\17\t\21\n\23\13\25") 26 buf.write(u"\f\27\r\31\16\33\17\35\20\37\21!\22#\2%\2\'\23)\24\3") 27 buf.write(u"\2\b\5\2--//>>\3\2$$\3\2\62;\5\2C\\aac|\4\2\f\f\17\17") 28 buf.write(u"\5\2\f\f\17\17\"\"\2\u009c\2\3\3\2\2\2\2\5\3\2\2\2\2") 29 buf.write(u"\7\3\2\2\2\2\t\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17") 30 buf.write(u"\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2\2\2\25\3\2\2\2\2\27") 31 buf.write(u"\3\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2\2\2\37") 32 buf.write(u"\3\2\2\2\2!\3\2\2\2\2\'\3\2\2\2\2)\3\2\2\2\3+\3\2\2\2") 33 buf.write(u"\5-\3\2\2\2\7/\3\2\2\2\t\62\3\2\2\2\13\64\3\2\2\2\r\66") 34 buf.write(u"\3\2\2\2\178\3\2\2\2\21:\3\2\2\2\23<\3\2\2\2\25>\3\2") 35 buf.write(u"\2\2\27H\3\2\2\2\31J\3\2\2\2\33Z\3\2\2\2\35\\\3\2\2\2") 36 buf.write(u"\37e\3\2\2\2!l\3\2\2\2#w\3\2\2\2%z\3\2\2\2\'|\3\2\2\2") 37 buf.write(u")\u008a\3\2\2\2+,\7*\2\2,\4\3\2\2\2-.\7+\2\2.\6\3\2\2") 38 buf.write(u"\2/\60\7k\2\2\60\61\7h\2\2\61\b\3\2\2\2\62\63\7}\2\2") 39 buf.write(u"\63\n\3\2\2\2\64\65\7\177\2\2\65\f\3\2\2\2\66\67\7]\2") 40 buf.write(u"\2\67\16\3\2\2\289\7_\2\29\20\3\2\2\2:;\7\60\2\2;\22") 41 buf.write(u"\3\2\2\2<=\7.\2\2=\24\3\2\2\2>?\7g\2\2?@\7n\2\2@A\7u") 42 buf.write(u"\2\2AB\7g\2\2B\26\3\2\2\2CI\7?\2\2DE\7-\2\2EI\7?\2\2") 43 buf.write(u"FG\7/\2\2GI\7?\2\2HC\3\2\2\2HD\3\2\2\2HF\3\2\2\2I\30") 44 buf.write(u"\3\2\2\2JK\7#\2\2K\32\3\2\2\2L[\t\2\2\2MN\7>\2\2N[\7") 45 buf.write(u"?\2\2O[\7@\2\2PQ\7@\2\2Q[\7?\2\2RS\7?\2\2S[\7?\2\2TU") 46 buf.write(u"\7#\2\2U[\7?\2\2VW\7(\2\2W[\7(\2\2XY\7~\2\2Y[\7~\2\2") 47 buf.write(u"ZL\3\2\2\2ZM\3\2\2\2ZO\3\2\2\2ZP\3\2\2\2ZR\3\2\2\2ZT") 48 buf.write(u"\3\2\2\2ZV\3\2\2\2ZX\3\2\2\2[\34\3\2\2\2\\a\5%\23\2]") 49 buf.write(u"`\5#\22\2^`\5%\23\2_]\3\2\2\2_^\3\2\2\2`c\3\2\2\2a_\3") 50 buf.write(u"\2\2\2ab\3\2\2\2b\36\3\2\2\2ca\3\2\2\2df\7/\2\2ed\3\2") 51 buf.write(u"\2\2ef\3\2\2\2fh\3\2\2\2gi\5#\22\2hg\3\2\2\2ij\3\2\2") 52 buf.write(u"\2jh\3\2\2\2jk\3\2\2\2k \3\2\2\2lr\7$\2\2mn\7^\2\2nq") 53 buf.write(u"\7$\2\2oq\n\3\2\2pm\3\2\2\2po\3\2\2\2qt\3\2\2\2rp\3\2") 54 buf.write(u"\2\2rs\3\2\2\2su\3\2\2\2tr\3\2\2\2uv\7$\2\2v\"\3\2\2") 55 buf.write(u"\2wx\t\4\2\2x$\3\2\2\2y{\t\5\2\2zy\3\2\2\2{&\3\2\2\2") 56 buf.write(u"|\u0080\7%\2\2}\177\n\6\2\2~}\3\2\2\2\177\u0082\3\2\2") 57 buf.write(u"\2\u0080~\3\2\2\2\u0080\u0081\3\2\2\2\u0081\u0084\3\2") 58 buf.write(u"\2\2\u0082\u0080\3\2\2\2\u0083\u0085\7\17\2\2\u0084\u0083") 59 buf.write(u"\3\2\2\2\u0084\u0085\3\2\2\2\u0085\u0086\3\2\2\2\u0086") 60 buf.write(u"\u0087\7\f\2\2\u0087\u0088\3\2\2\2\u0088\u0089\b\24\2") 61 buf.write(u"\2\u0089(\3\2\2\2\u008a\u008b\t\7\2\2\u008b\u008c\3\2") 62 buf.write(u"\2\2\u008c\u008d\b\25\2\2\u008d*\3\2\2\2\16\2HZ_aejp") 63 buf.write(u"rz\u0080\u0084\3\b\2\2") 64 return buf.getvalue() 65 66 67class gnLexer(Lexer): 68 69 atn = ATNDeserializer().deserialize(serializedATN()) 70 71 decisionsToDFA = [ DFA(ds, i) for i, ds in enumerate(atn.decisionToState) ] 72 73 T__0 = 1 74 T__1 = 2 75 T__2 = 3 76 T__3 = 4 77 T__4 = 5 78 T__5 = 6 79 T__6 = 7 80 T__7 = 8 81 T__8 = 9 82 T__9 = 10 83 AssignOp = 11 84 UnaryOp = 12 85 BinaryOp = 13 86 Identifier = 14 87 Integer = 15 88 String = 16 89 COMMENT = 17 90 WS = 18 91 92 channelNames = [ u"DEFAULT_TOKEN_CHANNEL", u"HIDDEN" ] 93 94 modeNames = [ u"DEFAULT_MODE" ] 95 96 literalNames = [ u"<INVALID>", 97 u"'('", u"')'", u"'if'", u"'{'", u"'}'", u"'['", u"']'", u"'.'", 98 u"','", u"'else'", u"'!'" ] 99 100 symbolicNames = [ u"<INVALID>", 101 u"AssignOp", u"UnaryOp", u"BinaryOp", u"Identifier", u"Integer", 102 u"String", u"COMMENT", u"WS" ] 103 104 ruleNames = [ u"T__0", u"T__1", u"T__2", u"T__3", u"T__4", u"T__5", 105 u"T__6", u"T__7", u"T__8", u"T__9", u"AssignOp", u"UnaryOp", 106 u"BinaryOp", u"Identifier", u"Integer", u"String", u"DIGIT", 107 u"LETTER", u"COMMENT", u"WS" ] 108 109 grammarFileName = u"gn.g4" 110 111 def __init__(self, input=None, output=sys.stdout): 112 super(gnLexer, self).__init__(input, output=output) 113 self.checkVersion("4.7.1") 114 self._interp = LexerATNSimulator(self, self.atn, self.decisionsToDFA, PredictionContextCache()) 115 self._actions = None 116 self._predicates = None 117 118 119