-
Notifications
You must be signed in to change notification settings - Fork 0
/
BasicLexer.py
286 lines (271 loc) · 15.4 KB
/
BasicLexer.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
# Generated from ./BasicLexer.g4 by ANTLR 4.13.1
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
def serializedATN():
return [
4,0,54,469,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,
2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,
13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,
19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,
26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,
32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,
39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,
45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,
52,7,52,2,53,7,53,1,0,1,0,1,1,1,1,1,2,1,2,1,2,1,2,1,3,1,3,1,4,1,
4,1,5,1,5,1,6,1,6,1,6,1,6,1,7,1,7,1,7,1,8,1,8,1,8,1,9,1,9,1,9,1,
10,1,10,1,11,1,11,1,12,1,12,1,13,1,13,1,13,1,13,1,13,1,13,3,13,149,
8,13,1,14,1,14,1,14,1,14,3,14,155,8,14,1,15,1,15,1,15,1,15,1,15,
1,15,3,15,163,8,15,1,16,1,16,1,17,1,17,1,18,1,18,1,19,1,19,1,20,
1,20,1,21,1,21,1,21,1,21,1,21,1,21,3,21,181,8,21,1,22,1,22,1,22,
1,22,1,22,1,22,3,22,189,8,22,1,23,1,23,1,23,1,23,1,23,1,23,1,23,
1,23,1,23,1,23,3,23,201,8,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,
1,24,3,24,211,8,24,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,3,25,
221,8,25,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,3,26,
233,8,26,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,3,27,
245,8,27,1,28,1,28,1,28,1,28,1,28,1,28,3,28,253,8,28,1,29,1,29,1,
29,1,29,1,29,1,29,3,29,261,8,29,1,30,1,30,1,30,1,30,1,30,1,30,1,
30,1,30,1,30,1,30,3,30,273,8,30,1,31,1,31,1,31,1,31,1,31,1,31,3,
31,281,8,31,1,32,1,32,1,32,1,32,3,32,287,8,32,1,33,1,33,1,33,1,33,
1,33,1,33,1,33,1,33,3,33,297,8,33,1,34,1,34,1,34,1,34,1,34,1,34,
1,34,1,34,3,34,307,8,34,1,35,1,35,1,35,1,35,1,35,1,35,3,35,315,8,
35,1,36,1,36,1,36,1,36,1,36,1,36,3,36,323,8,36,1,37,1,37,1,37,1,
37,1,37,1,37,3,37,331,8,37,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,
38,1,38,1,38,3,38,343,8,38,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,
39,1,39,1,39,1,39,1,39,3,39,357,8,39,1,40,1,40,1,40,1,40,1,40,1,
40,1,40,1,40,1,40,1,40,3,40,369,8,40,1,41,1,41,1,41,1,41,1,41,1,
41,1,41,1,41,3,41,379,8,41,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,
42,3,42,389,8,42,1,43,1,43,1,43,1,43,3,43,395,8,43,1,44,1,44,1,44,
1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,
3,44,413,8,44,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,3,45,423,8,
45,1,46,1,46,5,46,427,8,46,10,46,12,46,430,9,46,1,47,4,47,433,8,
47,11,47,12,47,434,1,48,4,48,438,8,48,11,48,12,48,439,1,49,1,49,
1,49,3,49,445,8,49,1,50,1,50,5,50,449,8,50,10,50,12,50,452,9,50,
1,50,1,50,1,51,1,51,1,52,3,52,459,8,52,1,52,1,52,1,53,4,53,464,8,
53,11,53,12,53,465,1,53,1,53,0,0,54,1,1,3,2,5,3,7,4,9,5,11,6,13,
7,15,8,17,9,19,10,21,11,23,12,25,13,27,14,29,15,31,16,33,17,35,18,
37,19,39,20,41,21,43,22,45,23,47,24,49,25,51,26,53,27,55,28,57,29,
59,30,61,31,63,32,65,33,67,34,69,35,71,36,73,37,75,38,77,39,79,40,
81,41,83,42,85,43,87,44,89,45,91,46,93,47,95,48,97,49,99,50,101,
51,103,52,105,53,107,54,1,0,5,2,0,10,10,13,13,2,0,65,90,97,122,1,
0,48,57,3,0,10,10,13,13,34,34,2,0,9,9,32,32,503,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,0,11,1,0,0,0,0,13,1,
0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,
0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,
0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,
0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,
0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,
0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,
0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,
0,0,0,0,85,1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,
0,0,0,0,95,1,0,0,0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,
1,0,0,0,0,105,1,0,0,0,0,107,1,0,0,0,1,109,1,0,0,0,3,111,1,0,0,0,
5,113,1,0,0,0,7,117,1,0,0,0,9,119,1,0,0,0,11,121,1,0,0,0,13,123,
1,0,0,0,15,127,1,0,0,0,17,130,1,0,0,0,19,133,1,0,0,0,21,136,1,0,
0,0,23,138,1,0,0,0,25,140,1,0,0,0,27,148,1,0,0,0,29,154,1,0,0,0,
31,162,1,0,0,0,33,164,1,0,0,0,35,166,1,0,0,0,37,168,1,0,0,0,39,170,
1,0,0,0,41,172,1,0,0,0,43,180,1,0,0,0,45,188,1,0,0,0,47,200,1,0,
0,0,49,210,1,0,0,0,51,220,1,0,0,0,53,232,1,0,0,0,55,244,1,0,0,0,
57,252,1,0,0,0,59,260,1,0,0,0,61,272,1,0,0,0,63,280,1,0,0,0,65,286,
1,0,0,0,67,296,1,0,0,0,69,306,1,0,0,0,71,314,1,0,0,0,73,322,1,0,
0,0,75,330,1,0,0,0,77,342,1,0,0,0,79,356,1,0,0,0,81,368,1,0,0,0,
83,378,1,0,0,0,85,388,1,0,0,0,87,394,1,0,0,0,89,412,1,0,0,0,91,422,
1,0,0,0,93,424,1,0,0,0,95,432,1,0,0,0,97,437,1,0,0,0,99,441,1,0,
0,0,101,446,1,0,0,0,103,455,1,0,0,0,105,458,1,0,0,0,107,463,1,0,
0,0,109,110,5,42,0,0,110,2,1,0,0,0,111,112,5,47,0,0,112,4,1,0,0,
0,113,114,5,68,0,0,114,115,5,73,0,0,115,116,5,86,0,0,116,6,1,0,0,
0,117,118,5,43,0,0,118,8,1,0,0,0,119,120,5,45,0,0,120,10,1,0,0,0,
121,122,5,94,0,0,122,12,1,0,0,0,123,124,5,77,0,0,124,125,5,79,0,
0,125,126,5,68,0,0,126,14,1,0,0,0,127,128,5,60,0,0,128,129,5,62,
0,0,129,16,1,0,0,0,130,131,5,62,0,0,131,132,5,61,0,0,132,18,1,0,
0,0,133,134,5,60,0,0,134,135,5,61,0,0,135,20,1,0,0,0,136,137,5,62,
0,0,137,22,1,0,0,0,138,139,5,60,0,0,139,24,1,0,0,0,140,141,5,61,
0,0,141,26,1,0,0,0,142,143,5,65,0,0,143,144,5,78,0,0,144,149,5,68,
0,0,145,146,5,97,0,0,146,147,5,110,0,0,147,149,5,100,0,0,148,142,
1,0,0,0,148,145,1,0,0,0,149,28,1,0,0,0,150,151,5,79,0,0,151,155,
5,82,0,0,152,153,5,111,0,0,153,155,5,114,0,0,154,150,1,0,0,0,154,
152,1,0,0,0,155,30,1,0,0,0,156,157,5,78,0,0,157,158,5,79,0,0,158,
163,5,84,0,0,159,160,5,110,0,0,160,161,5,111,0,0,161,163,5,116,0,
0,162,156,1,0,0,0,162,159,1,0,0,0,163,32,1,0,0,0,164,165,5,44,0,
0,165,34,1,0,0,0,166,167,5,40,0,0,167,36,1,0,0,0,168,169,5,41,0,
0,169,38,1,0,0,0,170,171,5,91,0,0,171,40,1,0,0,0,172,173,5,93,0,
0,173,42,1,0,0,0,174,175,5,76,0,0,175,176,5,69,0,0,176,181,5,78,
0,0,177,178,5,108,0,0,178,179,5,101,0,0,179,181,5,110,0,0,180,174,
1,0,0,0,180,177,1,0,0,0,181,44,1,0,0,0,182,183,5,86,0,0,183,184,
5,65,0,0,184,189,5,76,0,0,185,186,5,118,0,0,186,187,5,97,0,0,187,
189,5,108,0,0,188,182,1,0,0,0,188,185,1,0,0,0,189,46,1,0,0,0,190,
191,5,73,0,0,191,192,5,83,0,0,192,193,5,78,0,0,193,194,5,65,0,0,
194,201,5,78,0,0,195,196,5,105,0,0,196,197,5,115,0,0,197,198,5,110,
0,0,198,199,5,97,0,0,199,201,5,110,0,0,200,190,1,0,0,0,200,195,1,
0,0,0,201,48,1,0,0,0,202,203,5,82,0,0,203,204,5,65,0,0,204,205,5,
78,0,0,205,211,5,68,0,0,206,207,5,114,0,0,207,208,5,97,0,0,208,209,
5,110,0,0,209,211,5,100,0,0,210,202,1,0,0,0,210,206,1,0,0,0,211,
50,1,0,0,0,212,213,5,83,0,0,213,214,5,87,0,0,214,215,5,65,0,0,215,
221,5,80,0,0,216,217,5,115,0,0,217,218,5,119,0,0,218,219,5,97,0,
0,219,221,5,112,0,0,220,212,1,0,0,0,220,216,1,0,0,0,221,52,1,0,0,
0,222,223,5,80,0,0,223,224,5,82,0,0,224,225,5,73,0,0,225,226,5,78,
0,0,226,233,5,84,0,0,227,228,5,112,0,0,228,229,5,114,0,0,229,230,
5,105,0,0,230,231,5,110,0,0,231,233,5,116,0,0,232,222,1,0,0,0,232,
227,1,0,0,0,233,54,1,0,0,0,234,235,5,73,0,0,235,236,5,78,0,0,236,
237,5,80,0,0,237,238,5,85,0,0,238,245,5,84,0,0,239,240,5,105,0,0,
240,241,5,110,0,0,241,242,5,112,0,0,242,243,5,117,0,0,243,245,5,
116,0,0,244,234,1,0,0,0,244,239,1,0,0,0,245,56,1,0,0,0,246,247,5,
76,0,0,247,248,5,69,0,0,248,253,5,84,0,0,249,250,5,108,0,0,250,251,
5,101,0,0,251,253,5,116,0,0,252,246,1,0,0,0,252,249,1,0,0,0,253,
58,1,0,0,0,254,255,5,68,0,0,255,256,5,73,0,0,256,261,5,77,0,0,257,
258,5,100,0,0,258,259,5,105,0,0,259,261,5,109,0,0,260,254,1,0,0,
0,260,257,1,0,0,0,261,60,1,0,0,0,262,263,5,73,0,0,263,264,5,78,0,
0,264,265,5,68,0,0,265,266,5,69,0,0,266,273,5,88,0,0,267,268,5,105,
0,0,268,269,5,110,0,0,269,270,5,100,0,0,270,271,5,101,0,0,271,273,
5,120,0,0,272,262,1,0,0,0,272,267,1,0,0,0,273,62,1,0,0,0,274,275,
5,82,0,0,275,276,5,69,0,0,276,281,5,77,0,0,277,278,5,114,0,0,278,
279,5,101,0,0,279,281,5,109,0,0,280,274,1,0,0,0,280,277,1,0,0,0,
281,64,1,0,0,0,282,283,5,73,0,0,283,287,5,70,0,0,284,285,5,105,0,
0,285,287,5,102,0,0,286,282,1,0,0,0,286,284,1,0,0,0,287,66,1,0,0,
0,288,289,5,84,0,0,289,290,5,72,0,0,290,291,5,69,0,0,291,297,5,78,
0,0,292,293,5,116,0,0,293,294,5,104,0,0,294,295,5,101,0,0,295,297,
5,110,0,0,296,288,1,0,0,0,296,292,1,0,0,0,297,68,1,0,0,0,298,299,
5,69,0,0,299,300,5,76,0,0,300,301,5,83,0,0,301,307,5,69,0,0,302,
303,5,101,0,0,303,304,5,108,0,0,304,305,5,115,0,0,305,307,5,101,
0,0,306,298,1,0,0,0,306,302,1,0,0,0,307,70,1,0,0,0,308,309,5,69,
0,0,309,310,5,78,0,0,310,315,5,68,0,0,311,312,5,101,0,0,312,313,
5,110,0,0,313,315,5,100,0,0,314,308,1,0,0,0,314,311,1,0,0,0,315,
72,1,0,0,0,316,317,5,83,0,0,317,318,5,85,0,0,318,323,5,66,0,0,319,
320,5,115,0,0,320,321,5,117,0,0,321,323,5,98,0,0,322,316,1,0,0,0,
322,319,1,0,0,0,323,74,1,0,0,0,324,325,5,70,0,0,325,326,5,79,0,0,
326,331,5,82,0,0,327,328,5,102,0,0,328,329,5,111,0,0,329,331,5,114,
0,0,330,324,1,0,0,0,330,327,1,0,0,0,331,76,1,0,0,0,332,333,5,87,
0,0,333,334,5,72,0,0,334,335,5,73,0,0,335,336,5,76,0,0,336,343,5,
69,0,0,337,338,5,119,0,0,338,339,5,104,0,0,339,340,5,105,0,0,340,
341,5,108,0,0,341,343,5,101,0,0,342,332,1,0,0,0,342,337,1,0,0,0,
343,78,1,0,0,0,344,345,5,82,0,0,345,346,5,69,0,0,346,347,5,80,0,
0,347,348,5,69,0,0,348,349,5,65,0,0,349,357,5,84,0,0,350,351,5,114,
0,0,351,352,5,101,0,0,352,353,5,112,0,0,353,354,5,101,0,0,354,355,
5,97,0,0,355,357,5,116,0,0,356,344,1,0,0,0,356,350,1,0,0,0,357,80,
1,0,0,0,358,359,5,85,0,0,359,360,5,78,0,0,360,361,5,84,0,0,361,362,
5,73,0,0,362,369,5,76,0,0,363,364,5,117,0,0,364,365,5,110,0,0,365,
366,5,116,0,0,366,367,5,105,0,0,367,369,5,108,0,0,368,358,1,0,0,
0,368,363,1,0,0,0,369,82,1,0,0,0,370,371,5,83,0,0,371,372,5,84,0,
0,372,373,5,69,0,0,373,379,5,80,0,0,374,375,5,115,0,0,375,376,5,
116,0,0,376,377,5,101,0,0,377,379,5,112,0,0,378,370,1,0,0,0,378,
374,1,0,0,0,379,84,1,0,0,0,380,381,5,78,0,0,381,382,5,69,0,0,382,
383,5,88,0,0,383,389,5,84,0,0,384,385,5,110,0,0,385,386,5,101,0,
0,386,387,5,120,0,0,387,389,5,116,0,0,388,380,1,0,0,0,388,384,1,
0,0,0,389,86,1,0,0,0,390,391,5,84,0,0,391,395,5,79,0,0,392,393,5,
116,0,0,393,395,5,111,0,0,394,390,1,0,0,0,394,392,1,0,0,0,395,88,
1,0,0,0,396,397,5,67,0,0,397,398,5,79,0,0,398,399,5,78,0,0,399,400,
5,84,0,0,400,401,5,73,0,0,401,402,5,78,0,0,402,403,5,85,0,0,403,
413,5,69,0,0,404,405,5,99,0,0,405,406,5,111,0,0,406,407,5,110,0,
0,407,408,5,116,0,0,408,409,5,105,0,0,409,410,5,110,0,0,410,411,
5,117,0,0,411,413,5,101,0,0,412,396,1,0,0,0,412,404,1,0,0,0,413,
90,1,0,0,0,414,415,5,69,0,0,415,416,5,88,0,0,416,417,5,73,0,0,417,
423,5,84,0,0,418,419,5,101,0,0,419,420,5,120,0,0,420,421,5,105,0,
0,421,423,5,116,0,0,422,414,1,0,0,0,422,418,1,0,0,0,423,92,1,0,0,
0,424,428,3,63,31,0,425,427,8,0,0,0,426,425,1,0,0,0,427,430,1,0,
0,0,428,426,1,0,0,0,428,429,1,0,0,0,429,94,1,0,0,0,430,428,1,0,0,
0,431,433,7,1,0,0,432,431,1,0,0,0,433,434,1,0,0,0,434,432,1,0,0,
0,434,435,1,0,0,0,435,96,1,0,0,0,436,438,7,2,0,0,437,436,1,0,0,0,
438,439,1,0,0,0,439,437,1,0,0,0,439,440,1,0,0,0,440,98,1,0,0,0,441,
442,3,97,48,0,442,444,5,46,0,0,443,445,3,97,48,0,444,443,1,0,0,0,
444,445,1,0,0,0,445,100,1,0,0,0,446,450,5,34,0,0,447,449,8,3,0,0,
448,447,1,0,0,0,449,452,1,0,0,0,450,448,1,0,0,0,450,451,1,0,0,0,
451,453,1,0,0,0,452,450,1,0,0,0,453,454,5,34,0,0,454,102,1,0,0,0,
455,456,5,36,0,0,456,104,1,0,0,0,457,459,5,13,0,0,458,457,1,0,0,
0,458,459,1,0,0,0,459,460,1,0,0,0,460,461,5,10,0,0,461,106,1,0,0,
0,462,464,7,4,0,0,463,462,1,0,0,0,464,465,1,0,0,0,465,463,1,0,0,
0,465,466,1,0,0,0,466,467,1,0,0,0,467,468,6,53,0,0,468,108,1,0,0,
0,36,0,148,154,162,180,188,200,210,220,232,244,252,260,272,280,286,
296,306,314,322,330,342,356,368,378,388,394,412,422,428,434,439,
444,450,458,465,1,6,0,0
]
class BasicLexer(Lexer):
atn = ATNDeserializer().deserialize(serializedATN())
decisionsToDFA = [ DFA(ds, i) for i, ds in enumerate(atn.decisionToState) ]
MUL = 1
DIV = 2
IDIV = 3
ADD = 4
SUB = 5
EXP = 6
MOD = 7
NEQ = 8
GTE = 9
LTE = 10
GT = 11
LT = 12
EQ = 13
AND = 14
OR = 15
NOT = 16
COMMA = 17
LPAREN = 18
RPAREN = 19
LPARENSQ = 20
RPARENSQ = 21
LEN = 22
VAL = 23
ISNAN = 24
RAND = 25
SWAP = 26
PRINT = 27
INPUT = 28
LET = 29
DIM = 30
INDEX = 31
REM = 32
IF = 33
THEN = 34
ELSE = 35
END = 36
SUBROUTINE = 37
FOR = 38
WHILE = 39
REPEAT = 40
UNTIL = 41
STEP = 42
NEXT = 43
TO = 44
CONTINUE = 45
EXIT = 46
COMMENT = 47
ID = 48
NUMBER = 49
FLOAT = 50
STRINGLITERAL = 51
DOLLAR = 52
NEWLINE = 53
WS = 54
channelNames = [ u"DEFAULT_TOKEN_CHANNEL", u"HIDDEN" ]
modeNames = [ "DEFAULT_MODE" ]
literalNames = [ "<INVALID>",
"'*'", "'/'", "'DIV'", "'+'", "'-'", "'^'", "'MOD'", "'<>'",
"'>='", "'<='", "'>'", "'<'", "'='", "','", "'('", "')'", "'['",
"']'", "'$'" ]
symbolicNames = [ "<INVALID>",
"MUL", "DIV", "IDIV", "ADD", "SUB", "EXP", "MOD", "NEQ", "GTE",
"LTE", "GT", "LT", "EQ", "AND", "OR", "NOT", "COMMA", "LPAREN",
"RPAREN", "LPARENSQ", "RPARENSQ", "LEN", "VAL", "ISNAN", "RAND",
"SWAP", "PRINT", "INPUT", "LET", "DIM", "INDEX", "REM", "IF",
"THEN", "ELSE", "END", "SUBROUTINE", "FOR", "WHILE", "REPEAT",
"UNTIL", "STEP", "NEXT", "TO", "CONTINUE", "EXIT", "COMMENT",
"ID", "NUMBER", "FLOAT", "STRINGLITERAL", "DOLLAR", "NEWLINE",
"WS" ]
ruleNames = [ "MUL", "DIV", "IDIV", "ADD", "SUB", "EXP", "MOD", "NEQ",
"GTE", "LTE", "GT", "LT", "EQ", "AND", "OR", "NOT", "COMMA",
"LPAREN", "RPAREN", "LPARENSQ", "RPARENSQ", "LEN", "VAL",
"ISNAN", "RAND", "SWAP", "PRINT", "INPUT", "LET", "DIM",
"INDEX", "REM", "IF", "THEN", "ELSE", "END", "SUBROUTINE",
"FOR", "WHILE", "REPEAT", "UNTIL", "STEP", "NEXT", "TO",
"CONTINUE", "EXIT", "COMMENT", "ID", "NUMBER", "FLOAT",
"STRINGLITERAL", "DOLLAR", "NEWLINE", "WS" ]
grammarFileName = "BasicLexer.g4"
def __init__(self, input=None, output:TextIO = sys.stdout):
super().__init__(input, output)
self.checkVersion("4.13.1")
self._interp = LexerATNSimulator(self, self.atn, self.decisionsToDFA, PredictionContextCache())
self._actions = None
self._predicates = None