Add ANTLR grammar rules for 'bye' and 'goodbye' with parser and listener updates

This commit is contained in:
bobbert committed 2026-03-26 16:04:26 +00:00
1 parent 6205020013
commit d913d95b8b
9 files changed
+147 -29

No files matched your search

+21 -14
View File
@@ -10,16 +10,21 @@ else:
def serializedATN():
return [
4,0,3,27,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,1,0,1,0,1,0,1,0,1,0,1,0,1,
0,1,0,1,1,4,1,17,8,1,11,1,12,1,18,1,2,4,2,22,8,2,11,2,12,2,23,1,
2,1,2,0,0,3,1,1,3,2,5,3,1,0,2,2,0,65,90,97,122,3,0,9,10,13,13,32,
32,28,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,1,7,1,0,0,0,3,16,1,0,0,
0,5,21,1,0,0,0,7,8,5,109,0,0,8,9,5,105,0,0,9,10,5,110,0,0,10,11,
5,105,0,0,11,12,5,109,0,0,12,13,5,97,0,0,13,14,5,108,0,0,14,2,1,
0,0,0,15,17,7,0,0,0,16,15,1,0,0,0,17,18,1,0,0,0,18,16,1,0,0,0,18,
19,1,0,0,0,19,4,1,0,0,0,20,22,7,1,0,0,21,20,1,0,0,0,22,23,1,0,0,
0,23,21,1,0,0,0,23,24,1,0,0,0,24,25,1,0,0,0,25,26,6,2,0,0,26,6,1,
0,0,0,3,0,18,23,1,6,0,0
4,0,5,43,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,1,0,1,0,1,
0,1,0,1,0,1,0,1,0,1,0,1,1,1,1,1,1,1,1,1,2,1,2,1,2,1,2,1,2,1,2,1,
2,1,2,1,3,4,3,33,8,3,11,3,12,3,34,1,4,4,4,38,8,4,11,4,12,4,39,1,
4,1,4,0,0,5,1,1,3,2,5,3,7,4,9,5,1,0,2,2,0,65,90,97,122,3,0,9,10,
13,13,32,32,44,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,
9,1,0,0,0,1,11,1,0,0,0,3,19,1,0,0,0,5,23,1,0,0,0,7,32,1,0,0,0,9,
37,1,0,0,0,11,12,5,109,0,0,12,13,5,105,0,0,13,14,5,110,0,0,14,15,
5,105,0,0,15,16,5,109,0,0,16,17,5,97,0,0,17,18,5,108,0,0,18,2,1,
0,0,0,19,20,5,98,0,0,20,21,5,121,0,0,21,22,5,101,0,0,22,4,1,0,0,
0,23,24,5,103,0,0,24,25,5,111,0,0,25,26,5,111,0,0,26,27,5,100,0,
0,27,28,5,98,0,0,28,29,5,121,0,0,29,30,5,101,0,0,30,6,1,0,0,0,31,
33,7,0,0,0,32,31,1,0,0,0,33,34,1,0,0,0,34,32,1,0,0,0,34,35,1,0,0,
0,35,8,1,0,0,0,36,38,7,1,0,0,37,36,1,0,0,0,38,39,1,0,0,0,39,37,1,
0,0,0,39,40,1,0,0,0,40,41,1,0,0,0,41,42,6,4,0,0,42,10,1,0,0,0,3,
0,34,39,1,6,0,0
]
class week3Lexer(Lexer):
@@ -29,20 +34,22 @@ class week3Lexer(Lexer):
decisionsToDFA = [ DFA(ds, i) for i, ds in enumerate(atn.decisionToState) ]
T__0 = 1
ID = 2
WS = 3
T__1 = 2
T__2 = 3
ID = 4
WS = 5
channelNames = [ u"DEFAULT_TOKEN_CHANNEL", u"HIDDEN" ]
modeNames = [ "DEFAULT_MODE" ]
literalNames = [ "<INVALID>",
"'minimal'" ]
"'minimal'", "'bye'", "'goodbye'" ]
symbolicNames = [ "<INVALID>",
"ID", "WS" ]
ruleNames = [ "T__0", "ID", "WS" ]
ruleNames = [ "T__0", "T__1", "T__2", "ID", "WS" ]
grammarFileName = "week3.g4"