78 lines
2.4 KiB
Python
78 lines
2.4 KiB
Python
# Generated from Arit.g4 by ANTLR 4.9.2
|
|
from antlr4 import *
|
|
from io import StringIO
|
|
import sys
|
|
if sys.version_info[1] > 5:
|
|
from typing import TextIO
|
|
else:
|
|
from typing.io import TextIO
|
|
|
|
|
|
# header - mettre les d??clarations globales
|
|
import sys
|
|
idTab = {};
|
|
|
|
class UnknownIdentifier(Exception):
|
|
pass
|
|
|
|
class DivByZero(Exception):
|
|
pass
|
|
|
|
|
|
|
|
|
|
def serializedATN():
|
|
with StringIO() as buf:
|
|
buf.write("\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2\6")
|
|
buf.write("\'\b\1\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\3\2\3\2\3\2\3\2")
|
|
buf.write("\7\2\20\n\2\f\2\16\2\23\13\2\3\2\3\2\3\3\6\3\30\n\3\r")
|
|
buf.write("\3\16\3\31\3\4\6\4\35\n\4\r\4\16\4\36\3\5\6\5\"\n\5\r")
|
|
buf.write("\5\16\5#\3\5\3\5\2\2\6\3\3\5\4\7\5\t\6\3\2\5\4\2\f\f\17")
|
|
buf.write("\17\4\2C\\c|\5\2\13\f\17\17\"\"\2*\2\3\3\2\2\2\2\5\3\2")
|
|
buf.write("\2\2\2\7\3\2\2\2\2\t\3\2\2\2\3\13\3\2\2\2\5\27\3\2\2\2")
|
|
buf.write("\7\34\3\2\2\2\t!\3\2\2\2\13\f\7\61\2\2\f\r\7\61\2\2\r")
|
|
buf.write("\21\3\2\2\2\16\20\n\2\2\2\17\16\3\2\2\2\20\23\3\2\2\2")
|
|
buf.write("\21\17\3\2\2\2\21\22\3\2\2\2\22\24\3\2\2\2\23\21\3\2\2")
|
|
buf.write("\2\24\25\b\2\2\2\25\4\3\2\2\2\26\30\t\3\2\2\27\26\3\2")
|
|
buf.write("\2\2\30\31\3\2\2\2\31\27\3\2\2\2\31\32\3\2\2\2\32\6\3")
|
|
buf.write("\2\2\2\33\35\4\62;\2\34\33\3\2\2\2\35\36\3\2\2\2\36\34")
|
|
buf.write("\3\2\2\2\36\37\3\2\2\2\37\b\3\2\2\2 \"\t\4\2\2! \3\2\2")
|
|
buf.write("\2\"#\3\2\2\2#!\3\2\2\2#$\3\2\2\2$%\3\2\2\2%&\b\5\2\2")
|
|
buf.write("&\n\3\2\2\2\7\2\21\31\36#\3\b\2\2")
|
|
return buf.getvalue()
|
|
|
|
|
|
class AritLexer(Lexer):
|
|
|
|
atn = ATNDeserializer().deserialize(serializedATN())
|
|
|
|
decisionsToDFA = [ DFA(ds, i) for i, ds in enumerate(atn.decisionToState) ]
|
|
|
|
COMMENT = 1
|
|
ID = 2
|
|
INT = 3
|
|
WS = 4
|
|
|
|
channelNames = [ u"DEFAULT_TOKEN_CHANNEL", u"HIDDEN" ]
|
|
|
|
modeNames = [ "DEFAULT_MODE" ]
|
|
|
|
literalNames = [ "<INVALID>",
|
|
]
|
|
|
|
symbolicNames = [ "<INVALID>",
|
|
"COMMENT", "ID", "INT", "WS" ]
|
|
|
|
ruleNames = [ "COMMENT", "ID", "INT", "WS" ]
|
|
|
|
grammarFileName = "Arit.g4"
|
|
|
|
def __init__(self, input=None, output:TextIO = sys.stdout):
|
|
super().__init__(input, output)
|
|
self.checkVersion("4.9.2")
|
|
self._interp = LexerATNSimulator(self, self.atn, self.decisionsToDFA, PredictionContextCache())
|
|
self._actions = None
|
|
self._predicates = None
|
|
|
|
|