-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathgrammar_cfg.txt
534 lines (534 loc) · 22.6 KB
/
grammar_cfg.txt
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
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
KBKA -> 'KBKA'
KBKI -> 'KBKI'
KKKA -> 'KKKA'
KKKI -> 'KKKI'
NEWLINE -> 'NEWLINE'
IMPORT -> 'IMPORT'
STRING -> 'STRING'
NUM -> 'NUM'
KSKI -> 'KSKI'
KSKA -> 'KSKA'
TITIKKOMA -> 'TITIKKOMA'
TITIKDUA -> 'TITIKDUA'
ADD -> 'ADD'
ADDAS -> 'ADDAS'
INCREMENT -> 'INCREMENT'
SUB -> 'SUB'
SUBAS -> 'SUBAS'
DECREMENT -> 'DECREMENT'
MUL -> 'MUL'
MULAS -> 'MULAS'
DIV -> 'DIV'
DIVAS -> 'DIVAS'
MODAS -> 'MODAS'
MOD -> 'MOD'
POWAS -> 'POWAS'
POW -> 'POW'
FLOORDIVAS -> 'FLOORDIVAS'
FLOORDIV -> 'FLOORDIV'
ARROW -> 'ARROW'
LEQ -> 'LEQ'
L -> 'L'
GEQ -> 'GEQ'
G -> 'G'
DELETE -> 'DELETE'
NEQ -> 'NEQ'
ISEQ -> 'ISEQ'
EQ -> 'EQ'
AND -> 'AND'
OR -> 'OR'
NOT -> 'NOT'
XOR -> 'XOR'
BITLEFT -> 'BITLEFT'
BITRIGHT -> 'BITRIGHT'
BITOR -> 'BITOR'
BITAND -> 'BITAND'
BITNOT -> 'BITNOT'
TERNARY -> 'TERNARY'
BITORAS -> 'BITORAS'
BITANDAS -> 'BITANDAS'
NULLISHAS -> 'NULLISHAS'
BITRIGHTAS -> 'BITRIGHTAS'
BITLEFTAS -> 'BITLEFTAS'
NULLISH -> 'NULLISH'
IF -> 'IF'
ELSE -> 'ELSE'
ELSE_IF -> 'ELSE_IF'
FOR -> 'FOR'
IN -> 'IN'
DO -> 'DO'
WHILE -> 'WHILE'
SWITCH -> 'SWITCH'
CASE -> 'CASE'
DEFAULT -> 'DEFAULT'
TRY -> 'TRY'
CATCH -> 'CATCH'
FINALLY -> 'FINALLY'
THROW -> 'THROW'
CONTINUE -> 'CONTINUE'
BREAK -> 'BREAK'
FALSE -> 'FALSE'
TRUE -> 'TRUE'
NULL -> 'NULL'
UNDEFINED -> 'UNDEFINED'
FUNCTION -> 'FUNCTION'
RETURN -> 'RETURN'
EXTENDS -> 'EXTENDS'
FROM -> 'FROM'
IMPORT -> 'IMPORT'
AS -> 'AS'
TYPE -> 'TYPE'
COMMA -> 'COMMA'
ID -> 'ID'
S -> ENTER S
S -> S ENTER
S -> ENTER
S -> IMPORT_STATEMENT
S -> IMPORT_STATEMENT ENTER S
S -> IMPORT_STATEMENT ENTER SS
S -> SS
ENTER -> TITIKKOMA NEWLINE ENTER
ENTER -> TITIKKOMA
ENTER -> NEWLINE ENTER
ENTER -> NEWLINE
IMPORT_STATEMENT -> IMPORT STRING
IMPORT_STATEMENT -> IMPORT IMPORT_ID FROM STRING
IMPORT_ID -> V_KKKI IMPORT_ID V_KKKA
IMPORT_ID -> IMPORT_ID AS IMPORT_ID
IMPORT_ID -> IMPORT_ID COMMA IMPORT_ID
IMPORT_ID -> MUL
IMPORT_ID -> STRING
IMPORT_ID -> DEFAULT
IMPORT_ID -> ID
SS -> PART SS
PART -> CLASS_STATEMENT
PART -> FUNC_STATEMENT
PART -> FOR_STATEMENT
PART -> IF_BLOCK
PART -> WHILE_STATEMENT
PART -> SENTENCE
SS -> CLASS_STATEMENT
SS -> FUNC_STATEMENT
SS -> FOR_STATEMENT
SS -> IF_BLOCK
SS -> WHILE_STATEMENT
SS -> SENTENCE
FUNC_STATEMENT -> FUNCTION ID V_KBKI FUNC_PARAMETER V_KBKA V_KKKI FUNC_CONTENT V_KKKA
FUNC_STATEMENT -> FUNCTION ID V_KBKI V_KBKA V_KKKI FUNC_CONTENT V_KKKA
FUNC_STATEMENT -> ID EQ V_KBKI FUNC_PARAMETER V_KBKA ARROW V_KKKI FUNC_CONTENT V_KKKA
FUNC_STATEMENT -> ID EQ V_KBKI V_KBKA ARROW V_KKKI FUNC_CONTENT V_KKKA
FUNC_STATEMENT -> TYPE ID EQ V_KBKI FUNC_PARAMETER V_KBKA ARROW V_KKKI FUNC_CONTENT V_KKKA
FUNC_STATEMENT -> TYPE ID EQ V_KBKI V_KBKA ARROW V_KKKI FUNC_CONTENT V_KKKA
FUNC_PARAMETER -> OP_ASSIGN
FUNC_PARAMETER -> ID
FUNC_PARAMETER -> OP_ASSIGN COMMA FUNC_PARAMETER
FUNC_PARAMETER -> ID COMMA FUNC_PARAMETER
FUNC_CONTENT -> RETURN FUNC_RETURNABLE
FUNC_CONTENT -> RETURN FUNC_RETURNABLE FUNC_CONTENT
FUNC_CONTENT -> RETURN FUNC_CONTENT
FUNC_CONTENT -> RETURN
FUNC_CONTENT -> SENTENCE_FUNC FUNC_CONTENT
FUNC_CONTENT -> SENTENCE_FUNC
FUNC_RETURNABLE -> VALUE
FUNC_RETURNABLE -> OPERATION
FUNC_RETURNABLE -> EXPRESSION
FUNC_RETURNABLE -> ID
FUNC_RETURNABLE -> LIST_ID
DELETE_STATEMENT -> DELETE DELETEABLE
DELETEABLE -> V_KBKI DELETEABLE V_KBKA
DELETEABLE -> VALUE
DELETEABLE -> ID
DELETEABLE -> LIST_ID
DELETEABLE -> EXPRESSION
DELETEABLE -> OPERATION
IF_STATEMENT -> IF V_KBKI IF_PARAMETER V_KBKA V_KKKI SENTENCE V_KKKA
IF_STATEMENT -> IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI SENTENCE V_KKKA
IF_STATEMENT -> IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI SENTENCE V_KKKA
ELSE_IF_STATEMENT -> ELSE_IF V_KBKI IF_PARAMETER V_KBKA V_KKKI SENTENCE V_KKKA
ELSE_IF_STATEMENT -> ELSE_IF V_KBKI IF_PARAMETER V_KBKA V_KKKI SENTENCE V_KKKA ELSE_IF_STATEMENT
ELSE_IF_STATEMENT -> ELSE_IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI SENTENCE V_KKKA
ELSE_IF_STATEMENT -> ELSE_IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI SENTENCE V_KKKA ELSE_IF_STATEMENT
ELSE_IF_STATEMENT -> ELSE_IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI SENTENCE V_KKKA
ELSE_IF_STATEMENT -> ELSE_IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI SENTENCE V_KKKA ELSE_IF_STATEMENT
ELSE_STATEMENT -> ELSE V_KKKI SENTENCE V_KKKA
ELSE_STATEMENT -> ELSE V_KKKI V_KKKA
IF_PARAMETER -> OPERATION
IF_PARAMETER -> VALUE
IF_PARAMETER -> ID
IF_PARAMETER -> LIST_ID
IF_PARAMETER -> EXPRESSION
IF_PARAMETER -> FUNC_STATEMENT
IF_BLOCK -> IF_STATEMENT
IF_BLOCK -> IF_STATEMENT ELSE V_KKKI SENTENCE V_KKKA
IF_BLOCK -> IF_STATEMENT ELSE_IF_STATEMENT ELSE V_KKKI SENTENCE V_KKKA
IF_BLOCK -> IF_STATEMENT ELSE_IF_STATEMENT
SWITCH_STATEMENT -> SWITCH V_KBKI VALUE V_KBKA V_KKKI SWITCH_CONTENT V_KKKA
SWITCH_STATEMENT -> SWITCH V_KBKI VALUE V_KBKA V_KKKI V_KKKA
SWITCH_STATEMENT -> SWITCH V_KBKI EXPRESSION V_KBKA V_KKKI SWITCH_CONTENT V_KKKA
SWITCH_STATEMENT -> SWITCH V_KBKI EXPRESSION V_KBKA V_KKKI V_KKKA
SWITCH_STATEMENT -> SWITCH V_KBKI ID V_KBKA V_KKKI SWITCH_CONTENT V_KKKA
SWITCH_STATEMENT -> SWITCH V_KBKI ID V_KBKA
SWITCH_STATEMENT -> SWITCH V_KBKI LIST_ID V_KBKA
SWITCH_CONTENT -> CASE_STATEMENTS DEFAULT_STATEMENT
SWITCH_CONTENT -> CASE_STATEMENTS BREAK
SWITCH_CONTENT -> CASE_STATEMENTS
DEFAULT_STATEMENT -> DEFAULT V_TITIKDUA CASE_CONTENTS CASE_STATEMENTS
DEFAULT_STATEMENT -> DEFAULT V_TITIKDUA CASE_CONTENTS
DEFAULT_STATEMENT -> DEFAULT V_TITIKDUA CASE_STATEMENTS
DEFAULT_STATEMENT -> DEFAULT V_TITIKDUA
CASE_STATEMENTS -> CASE_STATEMENT
CASE_STATEMENTS -> CASE_STATEMENT ENTER CASE_STATEMENTS
CASE_STATEMENT -> CASE V_KBKI VALUE V_KBKA V_TITIKDUA CASE_CONTENTS
CASE_STATEMENT -> CASE_STATEMENTS V_TITIKKOMA CASE_STATEMENTS
CASE_STATEMENT -> CASE V_KBKI EXPRESSION V_KBKA V_TITIKDUA CASE_CONTENTS
CASE_STATEMENT -> CASE VALUE V_TITIKDUA CASE_CONTENTS
CASE_STATEMENT -> CASE EXPRESSION V_TITIKDUA CASE_CONTENTS
CASE_STATEMENT -> CASE V_KBKI VALUE V_KBKA V_TITIKDUA
CASE_STATEMENT -> CASE V_KBKI EXPRESSION V_KBKA V_TITIKDUA
CASE_STATEMENT -> CASE VALUE V_TITIKDUA
CASE_STATEMENT -> CASE EXPRESSION V_TITIKDUA
CASE_CONTENTS -> CASE_CONTENT
CASE_CONTENTS -> CASE_CONTENT ENTER CASE_CONTENTS
CASE_CONTENT -> ENTER
CASE_CONTENT -> BREAK
CASE_CONTENT -> RETURN FUNC_RETURNABLE
CASE_CONTENT -> SENTENCE ENTER
CASE_CONTENT -> ENTER SENTENCE
TRY_BLOCK -> TRY_STATEMENT CATCH_STATEMENT FINALLY_STATEMENT
TRY_BLOCK -> TRY_STATEMENT CATCH_STATEMENT
TRY_BLOCK -> TRY_STATEMENT FINALLY_STATEMENT
TRY_STATEMENT -> TRY V_KKKI V_KKKA
TRY_STATEMENT -> TRY V_KKKI TRY_CONTENT V_KKKA
CATCH_STATEMENT -> CATCH V_KBKI ID V_KBKA V_KKKI SENTENCE V_KKKA
CATCH_STATEMENT -> CATCH V_KBKI ID V_KBKA V_KKKI V_KKKA
CATCH_STATEMENT -> CATCH V_KKKI SENTENCE V_KKKA
CATCH_STATEMENT -> CATCH V_KKKI V_KKKA
FINALLY_STATEMENT -> FINALLY V_KKKI SENTENCE V_KKKA
FINALLY_STATEMENT -> FINALLY V_KKKI V_KKKA
TRY_CONTENT -> THROW TRY_THROWABLE
TRY_CONTENT -> THROW TRY_THROWABLE TRY_CONTENT
TRY_CONTENT -> SENTENCE
TRY_CONTENT -> SENTENCE TRY_CONTENT
TRY_CONTENT -> IF_BLOCK_TRY
TRY_CONTENT -> WHILE_STATEMENT_TRY
TRY_CONTENT -> DOWHILE_STATEMENT_TRY
TRY_CONTENT -> FOR_STATEMENT_TRY
TRY_THROWABLE -> VALUE
TRY_THROWABLE -> ID
TRY_THROWABLE -> LIST_ID
TRY_THROWABLE -> EXPRESSION
TRY_THROWABLE -> OPERATION
IF_STATEMENT_TRY -> IF V_KBKI IF_PARAMETER V_KBKA V_KKKI TRY_CONTENT V_KKKA
IF_STATEMENT_TRY -> IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI TRY_CONTENT V_KKKA
IF_STATEMENT_TRY -> IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI TRY_CONTENT V_KKKA
ELSE_IF_STATEMENT_TRY -> ELSE_IF V_KBKI IF_PARAMETER V_KBKA V_KKKI TRY_CONTENT V_KKKA
ELSE_IF_STATEMENT_TRY -> ELSE_IF V_KBKI IF_PARAMETER V_KBKA V_KKKI TRY_CONTENT V_KKKA ELSE_IF_STATEMENT_TRY
ELSE_IF_STATEMENT_TRY -> ELSE_IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI TRY_CONTENT V_KKKA
ELSE_IF_STATEMENT_TRY -> ELSE_IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI TRY_CONTENT V_KKKA ELSE_IF_STATEMENT_TRY
ELSE_IF_STATEMENT_TRY -> ELSE_IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI TRY_CONTENT V_KKKA
ELSE_IF_STATEMENT_TRY -> ELSE_IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI TRY_CONTENT V_KKKA ELSE_IF_STATEMENT_TRY
ELSE_STATEMENT_TRY -> ELSE V_KKKI TRY_CONTENT V_KKKA
ELSE_STATEMENT_TRY -> ELSE V_KKKI V_KKKA
IF_BLOCK_TRY -> IF_STATEMENT_TRY
IF_BLOCK_TRY -> IF_STATEMENT_TRY ELSE_STATEMENT_TRY
IF_BLOCK_TRY -> IF_STATEMENT_TRY ELSE_IF_STATEMENT_TRY ELSE_STATEMENT_TRY
IF_BLOCK_TRY -> IF_STATEMENT_TRY ELSE_IF_STATEMENT_TRY
WHILE_STATEMENT_TRY -> WHILE V_KBKI WHILE_PARAMETER V_KBKA V_KKKI TRY_LOOP_CONTENT V_KKKA
DOWHILE_STATEMENT_TRY -> DO V_KKKI TRY_LOOP_CONTENT V_KKKA WHILE V_KBKI WHILE_PARAMETER V_KBKA
FOR_STATEMENT_TRY -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI TRY_LOOP_CONTENT V_KKKA
FOR_STATEMENT_TRY -> FOR V_KBKI V_TITIKKOMA FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI TRY_LOOP_CONTENT V_KKKA
FOR_STATEMENT_TRY -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI TRY_LOOP_CONTENT V_KKKA
FOR_STATEMENT_TRY -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_TITIKKOMA V_KBKA V_KKKI TRY_LOOP_CONTENT V_KKKA
FOR_STATEMENT_TRY -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA V_TITIKKOMA V_KBKA V_KKKI TRY_LOOP_CONTENT V_KKKA
FOR_STATEMENT_TRY -> FOR V_KBKI V_TITIKKOMA FOR_OPERATION V_TITIKKOMA V_KBKA V_KKKI TRY_LOOP_CONTENT V_KKKA
FOR_STATEMENT_TRY -> FOR V_KBKI V_TITIKKOMA V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI TRY_LOOP_CONTENT V_KKKA
FOR_STATEMENT_TRY -> FOR V_KBKI V_TITIKKOMA V_TITIKKOMA V_KBKA V_KKKI TRY_LOOP_CONTENT V_KKKA SENTENCE_FUNC
TRY_LOOP_CONTENT -> TRY_CONTENT
TRY_LOOP_CONTENT -> LOOP_CONTENT
EXPRESSION -> ID V_KBKI V_KBKA
EXPRESSION -> ID V_KBKI GNRL_PARAMETER V_KBKA
GNRL_PARAMETER -> V_KKKI GNRL_PARAMETER V_KKKA
GNRL_PARAMETER -> ID
GNRL_PARAMETER -> VALUE
GNRL_PARAMETER -> OPERATION
GNRL_PARAMETER -> EXPRESSION
GNRL_PARAMETER -> ID V_COMMA GNRL_PARAMETER
GNRL_PARAMETER -> VALUE V_COMMA GNRL_PARAMETER
GNRL_PARAMETER -> OPERATION V_COMMA GNRL_PARAMETER
GNRL_PARAMETER -> EXPRESSION V_COMMA GNRL_PARAMETER
OPERATION -> ENTER OPERATION
OPERATION -> OPERATION ENTER
OPERATION -> V_KBKI OPERATION V_KBKA ENTER
OPERATION -> OP_LOGIC
OPERATION -> OP_ARIT
OPERATION -> OP_ASSIGN
OP_LOGIC -> V_KBKI OP_LOGIC V_KBKA
OP_LOGIC -> ID
OP_LOGIC -> LIST_ID
OP_LOGIC -> NOT OP_LOGIC
OP_LOGIC -> BITNOT OP_LOGIC
OP_LOGIC -> OPERAND V_OPERATOR_LOGIC OP_LOGIC
OP_LOGIC -> OPERAND V_OPERATOR_LOGIC OP_ARIT
OP_LOGIC -> OPERAND V_OPERATOR_LOGIC OPERAND
V_OPERATOR_LOGIC -> OPERATOR_LOGIC
V_OPERATOR_LOGIC -> ENTER OPERATOR_LOGIC
V_OPERATOR_LOGIC -> OPERATOR_LOGIC ENTER
V_OPERATOR_LOGIC -> ENTER OPERATOR_LOGIC ENTER
OPERATOR_LOGIC -> L
OPERATOR_LOGIC -> G
OPERATOR_LOGIC -> LEQ
OPERATOR_LOGIC -> GEQ
OPERATOR_LOGIC -> STRICTNEQ
OPERATOR_LOGIC -> NEQ
OPERATOR_LOGIC -> STRICTEQ
OPERATOR_LOGIC -> ISEQ
OPERATOR_LOGIC -> AND
OPERATOR_LOGIC -> OR
OPERATOR_LOGIC -> NULLISH
OP_ARIT -> V_KBKI OP_ARIT V_KBKA
OP_ARIT -> OPERAND V_OPERATOR_ARIT OP_ARIT
OP_ARIT -> OPERAND V_OPERATOR_ARIT OP_LOGIC
OP_ARIT -> OPERAND V_OPERATOR_ARIT OPERAND
V_OPERATOR_ARIT -> OPERATOR_ARIT
V_OPERATOR_ARIT -> ENTER OPERATOR_ARIT
V_OPERATOR_ARIT -> OPERATOR_ARIT ENTER
V_OPERATOR_ARIT -> ENTER OPERATOR_ARIT ENTER
OPERATOR_ARIT -> ADD
OPERATOR_ARIT -> SUB
OPERATOR_ARIT -> MUL
OPERATOR_ARIT -> DIV
OPERATOR_ARIT -> MOD
OPERATOR_ARIT -> POW
OPERATOR_ARIT -> XOR
OPERATOR_ARIT -> BITLEFT
OPERATOR_ARIT -> BITRIGHT
OPERATOR_ARIT -> BITOR
OPERATOR_ARIT -> BITAND
OPERATOR_ARIT -> BITNOT
OPERATOR_ARIT -> TERNARY
OPERAND -> EXPRESSION
OPERAND -> VALUE
OPERAND -> NOT OPERAND
OPERAND -> ID
OPERAND -> LIST_ID
OPERAND -> OP_ARIT
OP_ASSIGN -> V_KBKI OP_ASSIGN V_KBKA
OP_ASSIGN -> OPERAND_ASSIGN V_OPERATOR_ASSIGN OP_LOGIC
OP_ASSIGN -> OPERAND_ASSIGN V_OPERATOR_ASSIGN OP_ARIT
OP_ASSIGN -> OPERAND_ASSIGN V_OPERATOR_ASSIGN VALUE
OP_ASSIGN -> OPERAND_ASSIGN V_OPERATOR_ASSIGN EXPRESSION
OP_ASSIGN -> OPERAND_ASSIGN V_OPERATOR_ASSIGN ID
OP_ASSIGN -> OPERAND_ASSIGN V_OPERATOR_ASSIGN LIST_ID
OP_ASSIGN -> OPERAND_ASSIGN INCREMENT
OP_ASSIGN -> OPERAND_ASSIGN DECREMENT
V_OPERATOR_ASSIGN -> OPERATOR_ASSIGN
V_OPERATOR_ASSIGN -> ENTER OPERATOR_ASSIGN
V_OPERATOR_ASSIGN -> OPERATOR_ASSIGN ENTER
V_OPERATOR_ASSIGN -> ENTER OPERATOR_ASSIGN ENTER
OPERATOR_ASSIGN -> EQ
OPERATOR_ASSIGN -> ADDAS
OPERATOR_ASSIGN -> SUBAS
OPERATOR_ASSIGN -> MULAS
OPERATOR_ASSIGN -> DIVAS
OPERATOR_ASSIGN -> MODAS
OPERATOR_ASSIGN -> POWAS
OPERATOR_ASSIGN -> BITORAS
OPERATOR_ASSIGN -> BITANDAS
OPERATOR_ASSIGN -> NULLISHAS
OPERATOR_ASSIGN -> BITLEFTAS
OPERATOR_ASSIGN -> BITRIGHTAS
OPERAND_ASSIGN -> ID
OPERAND_ASSIGN -> LIST_ID
OPERAND_ASSIGN -> EXPRESSION
FOR_STATEMENT -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI LOOP_CONTENT V_KKKA
FOR_STATEMENT -> FOR V_KBKI V_TITIKKOMA FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI LOOP_CONTENT V_KKKA
FOR_STATEMENT -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI LOOP_CONTENT V_KKKA
FOR_STATEMENT -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_TITIKKOMA V_KBKA V_KKKI LOOP_CONTENT V_KKKA
FOR_STATEMENT -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA V_TITIKKOMA V_KBKA V_KKKI LOOP_CONTENT V_KKKA
FOR_STATEMENT -> FOR V_KBKI V_TITIKKOMA FOR_OPERATION V_TITIKKOMA V_KBKA V_KKKI LOOP_CONTENT V_KKKA
FOR_STATEMENT -> FOR V_KBKI V_TITIKKOMA V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI LOOP_CONTENT V_KKKA
FOR_STATEMENT -> FOR V_KBKI V_TITIKKOMA V_TITIKKOMA V_KBKA V_KKKI LOOP_CONTENT V_KKKA
FOR_OPERATION -> TYPE OP_ASSIGN
FOR_OPERATION -> OPERATION
WHILE_STATEMENT -> WHILE V_KBKI WHILE_PARAMETER V_KBKA V_KKKI LOOP_CONTENT V_KKKA
DOWHILE_STATEMENT -> DO V_KKKI LOOP_CONTENT V_KKKA WHILE V_KBKI WHILE_PARAMETER V_KBKA
WHILE_PARAMETER -> VALUE
WHILE_PARAMETER -> OPERATION
WHILE_PARAMETER -> EXPRESSION
WHILE_PARAMETER -> ID
WHILE_PARAMETER -> LIST_ID
LOOP_CONTENT -> SENTENCE_LOOP LOOP_CONTENT
LOOP_CONTENT -> SENTENCE_LOOP
LOOP_CONTENT -> LOOP_CONTENT LOOP_CONTENT
LOOP_CONTENT -> SENTENCE LOOP_CONTENT
LOOP_CONTENT -> SENTENCE
LOOP_CONTENT -> BREAK
LOOP_CONTENT -> CONTINUE
OBJECT_STATEMENT -> TYPE ID EQ V_KKKI OBJECT_CONTENTS V_KKKA
OBJECT_CONTENTS -> OBJECT_CONTENT
OBJECT_CONTENTS -> OBJECT_CONTENT OBJECT_CONTENTS
OBJECT_CONTENT -> OBJECT_CONTENT_LAST
OBJECT_CONTENT -> ID TITIKDUA OBJECT_VALUE V_COMMA
OBJECT_CONTENT -> VALUE TITIKDUA OBJECT_VALUE V_COMMA
OBJECT_CONTENT_LAST -> ID TITIKDUA OBJECT_VALUE
OBJECT_CONTENT_LAST -> VALUE TITIKDUA OBJECT_VALUE V_COMMA
OBJECT_CONTENT_LAST -> ID TITIKDUA OBJECT_VALUE
OBJECT_CONTENT_LAST -> VALUE TITIKDUA OBJECT_VALUE
OBJECT_VALUE -> VALUE
OBJECT_VALUE -> FUNCTION V_KBKI FUNC_PARAMETER V_KBKA V_KKKI FUNC_CONTENT V_KKKA
OBJECT_VALUE -> FUNCTION V_KBKI V_KBKA V_KKKI FUNC_CONTENT V_KKKA
OBJECT_VALUE -> V_KKKI OBJECT_CONTENTS V_KKKA
LIST_STATEMENT -> TYPE ID EQ LIST
LIST_STATEMENT -> ID EQ LIST
LIST -> V_KSKI LIST_MULTI V_KSKA
LIST -> V_KSKI V_KSKA
LIST -> V_KSKI GNRL_PARAMETER V_KSKA
LIST_MULTI -> LIST V_COMMA LIST_MULTI
LIST_MULTI -> LIST
LIST_ID -> ID LIST_INDEXING
LIST_INDEXING -> V_KSKI GNRL_PARAMETER V_KSKA
LIST_INDEXING -> V_KSKI GNRL_PARAMETER V_KSKA LIST_INDEXING
TERNARY_STATEMENT -> OPERATION V_TERNARY TERNARY_CONTENT V_TITIKDUA TERNARY_CONTENT
TERNARY_STATEMENT -> VAIDLUE V_TERNARY TERNARY_CONTENT V_TITIKDUA TERNARY_CONTENT
TERNARY_STATEMENT -> ID V_TERNARY TERNARY_CONTENT V_TITIKDUA TERNARY_CONTENT
TERNARY_STATEMENT -> LIST_ID V_TERNARY TERNARY_CONTENT V_TITIKDUA TERNARY_CONTENT
TERNARY_STATEMENT -> EXPRESSION V_TERNARY TERNARY_CONTENT V_TITIKDUA TERNARY_CONTENT
TERNARY_CONTENT -> V_KBKI TERNARY_CONTENT_MULTI V_KBKA
TERNARY_CONTENT -> OPERATION
TERNARY_CONTENT -> EXPRESSION
TERNARY_CONTENT -> ID
TERNARY_CONTENT -> LIST_ID
TERNARY_CONTENT -> VALUE
TERNARY_CONTENT_MULTI -> TERNARY_CONTENT V_COMMA TERNARY_CONTENT_MULTI
TERNARY_CONTENT_MULTI -> TERNARY_CONTENT
V_KBKI -> KBKI
V_KBKI -> ENTER KBKI
V_KBKI -> KBKI ENTER
V_KBKI -> ENTER KBKI ENTER
V_KBKA -> KBKA
V_KBKA -> ENTER KBKA
V_KBKA -> KBKA ENTER
V_KBKA -> ENTER KBKA ENTER
V_KSKI -> KSKI
V_KSKI -> ENTER KSKI
V_KSKI -> KSKI ENTER
V_KSKI -> ENTER KSKI ENTER
V_KSKA -> KSKA
V_KSKA -> ENTER KSKA
V_KSKA -> KSKA ENTER
V_KSKA -> ENTER KSKA ENTER
V_KKKI -> KKKI
V_KKKI -> ENTER KKKI
V_KKKI -> KKKI ENTER
V_KKKI -> ENTER KKKI ENTER
V_KKKA -> KKKA
V_KKKA -> ENTER KKKA
V_KKKA -> KKKA ENTER
V_KKKA -> ENTER KKKA ENTER
V_COMMA -> COMMA
V_COMMA -> ENTER COMMA
V_COMMA -> COMMA ENTER
V_COMMA -> ENTER COMMA ENTER
V_TERNARY -> TERNARY
V_TERNARY -> ENTER TERNARY
V_TERNARY -> TERNARY ENTER
V_TERNARY -> ENTER TERNARY ENTER
V_TITIKDUA -> TITIKDUA
V_TITIKDUA -> ENTER TITIKDUA
V_TITIKDUA -> TITIKDUA ENTER
V_TITIKDUA -> ENTER TITIKDUA ENTER
V_TITIKKOMA -> TITIKKOMA
V_TITIKKOMA -> ENTER TITIKKOMA
V_TITIKKOMA -> TITIKKOMA ENTER
V_TITIKKOMA -> ENTER TITIKKOMA ENTER
ID -> V_KKKI ID V_KKKA
BOOL -> TRUE
BOOL -> FALSE
BOOL -> UNDEFINED
VALUE -> V_KBKI VALUE V_KBKA
VALUE -> NUM
VALUE -> STRING
VALUE -> BOOL
VALUE -> LIST
VALUE -> NULL
IF_STATEMENT_LOOP -> IF V_KBKI IF_PARAMETER V_KBKA V_KKKI LOOP_CONTENT V_KKKA
IF_STATEMENT_LOOP -> IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI LOOP_CONTENT V_KKKA
IF_STATEMENT_LOOP -> IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI LOOP_CONTENT V_KKKA
ELSE_IF_STATEMENT_LOOP -> ELSE_IF V_KBKI IF_PARAMETER V_KBKA V_KKKI LOOP_CONTENT V_KKKA
ELSE_IF_STATEMENT_LOOP -> ELSE_IF V_KBKI IF_PARAMETER V_KBKA V_KKKI LOOP_CONTENT V_KKKA ELSE_IF_STATEMENT_LOOP
ELSE_IF_STATEMENT_LOOP -> ELSE_IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI LOOP_CONTENT V_KKKA
ELSE_IF_STATEMENT_LOOP -> ELSE_IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI LOOP_CONTENT V_KKKA ELSE_IF_STATEMENT_LOOP
ELSE_IF_STATEMENT_LOOP -> ELSE_IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI LOOP_CONTENT V_KKKA
ELSE_IF_STATEMENT_LOOP -> ELSE_IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI LOOP_CONTENT V_KKKA ELSE_IF_STATEMENT_LOOP
ELSE_STATEMENT_LOOP -> ELSE V_KKKI LOOP_CONTENT V_KKKA
ELSE_STATEMENT_LOOP -> ELSE V_KKKI V_KKKA
IF_BLOCK_LOOP -> IF_STATEMENT_LOOP
IF_BLOCK_LOOP -> IF_STATEMENT_LOOP ELSE_STATEMENT_LOOP
IF_BLOCK_LOOP -> IF_STATEMENT_LOOP ELSE_IF_STATEMENT_LOOP ELSE_STATEMENT_LOOP
IF_BLOCK_LOOP -> IF_STATEMENT_LOOP ELSE_IF_STATEMENT_LOOP
FUNC_STATEMENT_LOOP -> FUNCTION ID V_KBKI FUNC_PARAMETER V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
FUNC_STATEMENT_LOOP -> FUNCTION ID V_KBKI V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
FUNC_STATEMENT_LOOP -> ID EQ V_KBKI FUNC_PARAMETER V_KBKA ARROW V_KKKI FUNC_LOOP_CONTENT V_KKKA
FUNC_STATEMENT_LOOP -> ID EQ V_KBKI V_KBKA ARROW V_KKKI FUNC_LOOP_CONTENT V_KKKA
SENTENCE_LOOP -> IF_BLOCK_LOOP
SENTENCE_LOOP -> WHILE_STATEMENT_LOOP
SENTENCE_LOOP -> DOWHILE_STATEMENT_LOOP
SENTENCE_LOOP -> SENTENCE
SENTENCE_LOOP -> ENTER SENTENCE_LOOP
SENTENCE_LOOP -> SENTENCE_LOOP ENTER
SENTENCE_LOOP -> SENTENCE_LOOP ENTER SENTENCE_LOOP
SENTENCE_LOOP -> FOR_STATEMENT_LOOP
SENTENCE_LOOP -> SWITCH_STATEMENT_LOOP
IF_STATEMENT_FUNC -> IF V_KBKI IF_PARAMETER V_KBKA V_KKKI FUNC_CONTENT V_KKKA
IF_STATEMENT_FUNC -> IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI FUNC_CONTENT V_KKKA
IF_STATEMENT_FUNC -> IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI FUNC_CONTENT V_KKKA
ELSE_IF_STATEMENT_FUNC -> ELSE_IF V_KBKI IF_PARAMETER V_KBKA V_KKKI FUNC_CONTENT V_KKKA
ELSE_IF_STATEMENT_FUNC -> ELSE_IF V_KBKI IF_PARAMETER V_KBKA V_KKKI FUNC_CONTENT V_KKKA ELSE_IF_STATEMENT_FUNC
ELSE_IF_STATEMENT_FUNC -> ELSE_IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI FUNC_CONTENT V_KKKA
ELSE_IF_STATEMENT_FUNC -> ELSE_IF V_KBKI IF_PARAMETER IN LIST V_KBKA V_KKKI FUNC_CONTENT V_KKKA ELSE_IF_STATEMENT_FUNC
ELSE_IF_STATEMENT_FUNC -> ELSE_IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI FUNC_CONTENT V_KKKA
ELSE_IF_STATEMENT_FUNC -> ELSE_IF V_KBKI IF_PARAMETER IN LIST_ID V_KBKA V_KKKI FUNC_CONTENT V_KKKA ELSE_IF_STATEMENT_FUNC
ELSE_STATEMENT_FUNC -> ELSE V_KKKI FUNC_CONTENT V_KKKA
ELSE_STATEMENT_FUNC -> ELSE V_KKKI V_KKKA
IF_BLOCK_FUNC -> IF_STATEMENT_FUNC
IF_BLOCK_FUNC -> IF_STATEMENT_FUNC ELSE_STATEMENT_FUNC
IF_BLOCK_FUNC -> IF_STATEMENT_FUNC ELSE_IF_STATEMENT_FUNC ELSE_STATEMENT_FUNC
IF_BLOCK_FUNC -> IF_STATEMENT_FUNC ELSE_IF_STATEMENT_FUNC
WHILE_STATEMENT_FUNC -> WHILE V_KBKI WHILE_PARAMETER V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
DOWHILE_STATEMENT_FUNC -> DO V_KKKI FUNC_LOOP_CONTENT V_KKKA WHILE V_KBKI WHILE_PARAMETER V_KBKA
FOR_STATEMENT_FUNC -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
FOR_STATEMENT_FUNC -> FOR V_KBKI V_TITIKKOMA FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
FOR_STATEMENT_FUNC -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
FOR_STATEMENT_FUNC -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA FOR_OPERATION V_TITIKKOMA V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
FOR_STATEMENT_FUNC -> FOR V_KBKI FOR_OPERATION V_TITIKKOMA V_TITIKKOMA V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
FOR_STATEMENT_FUNC -> FOR V_KBKI V_TITIKKOMA FOR_OPERATION V_TITIKKOMA V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
FOR_STATEMENT_FUNC -> FOR V_KBKI V_TITIKKOMA V_TITIKKOMA FOR_OPERATION V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
FOR_STATEMENT_FUNC -> FOR V_KBKI V_TITIKKOMA V_TITIKKOMA V_KBKA V_KKKI FUNC_LOOP_CONTENT V_KKKA
SENTENCE_FUNC -> IF_BLOCK_FUNC
SENTENCE_FUNC -> WHILE_STATEMENT_FUNC
SENTENCE_FUNC -> DOWHILE_STATEMENT_FUNC
SENTENCE_FUNC -> SENTENCE
SENTENCE_FUNC -> ENTER SENTENCE_FUNC
SENTENCE_FUNC -> SENTENCE_FUNC ENTER
SENTENCE_FUNC -> SENTENCE_FUNC ENTER SENTENCE_FUNC
SENTENCE_FUNC -> FOR_STATEMENT_FUNC
SENTENCE_FUNC -> SWITCH_STATEMENT_FUNC
FUNC_LOOP_CONTENT -> FUNC_CONTENT
FUNC_LOOP_CONTENT -> LOOP_CONTENT
SENTENCE -> IF_BLOCK
SENTENCE -> WHILE_STATEMENT
SENTENCE -> DOWHILE_STATEMENT
SENTENCE -> EXPRESSION
SENTENCE -> FUNC_STATEMENT
SENTENCE -> TYPE OP_ASSIGN
SENTENCE -> OPERATION
SENTENCE -> FOR_STATEMENT
SENTENCE -> SWITCH_STATEMENT
SENTENCE -> TRY_BLOCK
SENTENCE -> OBJECT_STATEMENT
SENTENCE -> TERNARY_STATEMENT
SENTENCE -> ENTER
SENTENCE -> DELETE_STATEMENT
SENTENCE -> ENTER SENTENCE
SENTENCE -> SENTENCE ENTER SENTENCE
SENTENCE -> SENTENCE ENTER