@designliquido/delegua 0.14.4 → 0.14.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/bin/package.json +4 -1
  2. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +8 -1
  3. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +113 -42
  4. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -1
  5. package/fontes/interpretador/dialetos/portugol-studio/interpretador-portugol-studio.js.map +1 -1
  6. package/fontes/interpretador/interpretador-base.js +5 -1
  7. package/fontes/interpretador/interpretador-base.js.map +1 -1
  8. package/fontes/interpretador/pilha-escopos-execucao.d.ts +1 -0
  9. package/fontes/interpretador/pilha-escopos-execucao.js +14 -1
  10. package/fontes/interpretador/pilha-escopos-execucao.js.map +1 -1
  11. package/fontes/lexador/dialetos/lexador-portugol-ipt.d.ts +33 -0
  12. package/fontes/lexador/dialetos/lexador-portugol-ipt.js +196 -0
  13. package/fontes/lexador/dialetos/lexador-portugol-ipt.js.map +1 -0
  14. package/fontes/lexador/dialetos/lexador-portugol-studio.d.ts +2 -2
  15. package/fontes/lexador/dialetos/palavras-reservadas/portugol-ipt.d.ts +6 -0
  16. package/fontes/lexador/dialetos/palavras-reservadas/portugol-ipt.js +12 -0
  17. package/fontes/lexador/dialetos/palavras-reservadas/portugol-ipt.js.map +1 -0
  18. package/fontes/lexador/dialetos/palavras-reservadas/visualg.d.ts +2 -0
  19. package/fontes/lexador/dialetos/palavras-reservadas/visualg.js +2 -0
  20. package/fontes/lexador/dialetos/palavras-reservadas/visualg.js.map +1 -1
  21. package/fontes/lexador/lexador-base.d.ts +3 -3
  22. package/fontes/tipos-de-simbolos/portugol-ipt.d.ts +28 -0
  23. package/fontes/tipos-de-simbolos/portugol-ipt.js +30 -0
  24. package/fontes/tipos-de-simbolos/portugol-ipt.js.map +1 -0
  25. package/fontes/tipos-de-simbolos/visualg.d.ts +2 -0
  26. package/fontes/tipos-de-simbolos/visualg.js +2 -0
  27. package/fontes/tipos-de-simbolos/visualg.js.map +1 -1
  28. package/fontes/tradutores/python/python3-lexer.d.ts +152 -0
  29. package/fontes/tradutores/python/python3-lexer.js +1227 -0
  30. package/fontes/tradutores/python/python3-lexer.js.map +1 -0
  31. package/fontes/tradutores/python/python3-listener.d.ts +953 -0
  32. package/fontes/tradutores/python/python3-listener.js +3 -0
  33. package/fontes/tradutores/python/python3-listener.js.map +1 -0
  34. package/fontes/tradutores/python/python3-parser.d.ts +1330 -0
  35. package/fontes/tradutores/python/python3-parser.js +11157 -0
  36. package/fontes/tradutores/python/python3-parser.js.map +1 -0
  37. package/fontes/tradutores/python/python3-visitor.d.ts +612 -0
  38. package/fontes/tradutores/python/python3-visitor.js +3 -0
  39. package/fontes/tradutores/python/python3-visitor.js.map +1 -0
  40. package/fontes/tradutores/tradutor-python.d.ts +1 -0
  41. package/fontes/tradutores/tradutor-python.js +35 -0
  42. package/fontes/tradutores/tradutor-python.js.map +1 -0
  43. package/package.json +4 -1
@@ -0,0 +1,612 @@
1
+ import { ParseTreeVisitor } from 'antlr4ts/tree/ParseTreeVisitor';
2
+ import { Single_inputContext } from './python3-parser';
3
+ import { File_inputContext } from './python3-parser';
4
+ import { Eval_inputContext } from './python3-parser';
5
+ import { DecoratorContext } from './python3-parser';
6
+ import { DecoratorsContext } from './python3-parser';
7
+ import { DecoratedContext } from './python3-parser';
8
+ import { Async_funcdefContext } from './python3-parser';
9
+ import { FuncdefContext } from './python3-parser';
10
+ import { ParametersContext } from './python3-parser';
11
+ import { TypedargslistContext } from './python3-parser';
12
+ import { TfpdefContext } from './python3-parser';
13
+ import { VarargslistContext } from './python3-parser';
14
+ import { VfpdefContext } from './python3-parser';
15
+ import { StmtContext } from './python3-parser';
16
+ import { Simple_stmtContext } from './python3-parser';
17
+ import { Small_stmtContext } from './python3-parser';
18
+ import { Expr_stmtContext } from './python3-parser';
19
+ import { AnnassignContext } from './python3-parser';
20
+ import { Testlist_star_exprContext } from './python3-parser';
21
+ import { AugassignContext } from './python3-parser';
22
+ import { Del_stmtContext } from './python3-parser';
23
+ import { Pass_stmtContext } from './python3-parser';
24
+ import { Flow_stmtContext } from './python3-parser';
25
+ import { Break_stmtContext } from './python3-parser';
26
+ import { Continue_stmtContext } from './python3-parser';
27
+ import { Return_stmtContext } from './python3-parser';
28
+ import { Yield_stmtContext } from './python3-parser';
29
+ import { Raise_stmtContext } from './python3-parser';
30
+ import { Import_stmtContext } from './python3-parser';
31
+ import { Import_nameContext } from './python3-parser';
32
+ import { Import_fromContext } from './python3-parser';
33
+ import { Import_as_nameContext } from './python3-parser';
34
+ import { Dotted_as_nameContext } from './python3-parser';
35
+ import { Import_as_namesContext } from './python3-parser';
36
+ import { Dotted_as_namesContext } from './python3-parser';
37
+ import { Dotted_nameContext } from './python3-parser';
38
+ import { Global_stmtContext } from './python3-parser';
39
+ import { Nonlocal_stmtContext } from './python3-parser';
40
+ import { Assert_stmtContext } from './python3-parser';
41
+ import { Compound_stmtContext } from './python3-parser';
42
+ import { Async_stmtContext } from './python3-parser';
43
+ import { If_stmtContext } from './python3-parser';
44
+ import { While_stmtContext } from './python3-parser';
45
+ import { For_stmtContext } from './python3-parser';
46
+ import { Try_stmtContext } from './python3-parser';
47
+ import { With_stmtContext } from './python3-parser';
48
+ import { With_itemContext } from './python3-parser';
49
+ import { Except_clauseContext } from './python3-parser';
50
+ import { SuiteContext } from './python3-parser';
51
+ import { TestContext } from './python3-parser';
52
+ import { Test_nocondContext } from './python3-parser';
53
+ import { LambdefContext } from './python3-parser';
54
+ import { Lambdef_nocondContext } from './python3-parser';
55
+ import { Or_testContext } from './python3-parser';
56
+ import { And_testContext } from './python3-parser';
57
+ import { Not_testContext } from './python3-parser';
58
+ import { ComparisonContext } from './python3-parser';
59
+ import { Comp_opContext } from './python3-parser';
60
+ import { Star_exprContext } from './python3-parser';
61
+ import { ExprContext } from './python3-parser';
62
+ import { Xor_exprContext } from './python3-parser';
63
+ import { And_exprContext } from './python3-parser';
64
+ import { Shift_exprContext } from './python3-parser';
65
+ import { Arith_exprContext } from './python3-parser';
66
+ import { TermContext } from './python3-parser';
67
+ import { FactorContext } from './python3-parser';
68
+ import { PowerContext } from './python3-parser';
69
+ import { Atom_exprContext } from './python3-parser';
70
+ import { AtomContext } from './python3-parser';
71
+ import { Testlist_compContext } from './python3-parser';
72
+ import { TrailerContext } from './python3-parser';
73
+ import { SubscriptlistContext } from './python3-parser';
74
+ import { SubscriptContext } from './python3-parser';
75
+ import { SliceopContext } from './python3-parser';
76
+ import { ExprlistContext } from './python3-parser';
77
+ import { TestlistContext } from './python3-parser';
78
+ import { DictorsetmakerContext } from './python3-parser';
79
+ import { ClassdefContext } from './python3-parser';
80
+ import { ArglistContext } from './python3-parser';
81
+ import { ArgumentContext } from './python3-parser';
82
+ import { Comp_iterContext } from './python3-parser';
83
+ import { Comp_forContext } from './python3-parser';
84
+ import { Comp_ifContext } from './python3-parser';
85
+ import { Encoding_declContext } from './python3-parser';
86
+ import { Yield_exprContext } from './python3-parser';
87
+ import { Yield_argContext } from './python3-parser';
88
+ /**
89
+ * This interface defines a complete generic visitor for a parse tree produced
90
+ * by `python3-parser`.
91
+ *
92
+ * @param <Result> The return type of the visit operation. Use `void` for
93
+ * operations with no return type.
94
+ */
95
+ export interface Python3Visitor<Result> extends ParseTreeVisitor<Result> {
96
+ /**
97
+ * Visit a parse tree produced by `python3-parser.single_input`.
98
+ * @param ctx the parse tree
99
+ * @return the visitor result
100
+ */
101
+ visitSingle_input?: (ctx: Single_inputContext) => Result;
102
+ /**
103
+ * Visit a parse tree produced by `python3-parser.file_input`.
104
+ * @param ctx the parse tree
105
+ * @return the visitor result
106
+ */
107
+ visitFile_input?: (ctx: File_inputContext) => Result;
108
+ /**
109
+ * Visit a parse tree produced by `python3-parser.eval_input`.
110
+ * @param ctx the parse tree
111
+ * @return the visitor result
112
+ */
113
+ visitEval_input?: (ctx: Eval_inputContext) => Result;
114
+ /**
115
+ * Visit a parse tree produced by `python3-parser.decorator`.
116
+ * @param ctx the parse tree
117
+ * @return the visitor result
118
+ */
119
+ visitDecorator?: (ctx: DecoratorContext) => Result;
120
+ /**
121
+ * Visit a parse tree produced by `python3-parser.decorators`.
122
+ * @param ctx the parse tree
123
+ * @return the visitor result
124
+ */
125
+ visitDecorators?: (ctx: DecoratorsContext) => Result;
126
+ /**
127
+ * Visit a parse tree produced by `python3-parser.decorated`.
128
+ * @param ctx the parse tree
129
+ * @return the visitor result
130
+ */
131
+ visitDecorated?: (ctx: DecoratedContext) => Result;
132
+ /**
133
+ * Visit a parse tree produced by `python3-parser.async_funcdef`.
134
+ * @param ctx the parse tree
135
+ * @return the visitor result
136
+ */
137
+ visitAsync_funcdef?: (ctx: Async_funcdefContext) => Result;
138
+ /**
139
+ * Visit a parse tree produced by `python3-parser.funcdef`.
140
+ * @param ctx the parse tree
141
+ * @return the visitor result
142
+ */
143
+ visitFuncdef?: (ctx: FuncdefContext) => Result;
144
+ /**
145
+ * Visit a parse tree produced by `python3-parser.parameters`.
146
+ * @param ctx the parse tree
147
+ * @return the visitor result
148
+ */
149
+ visitParameters?: (ctx: ParametersContext) => Result;
150
+ /**
151
+ * Visit a parse tree produced by `python3-parser.typedargslist`.
152
+ * @param ctx the parse tree
153
+ * @return the visitor result
154
+ */
155
+ visitTypedargslist?: (ctx: TypedargslistContext) => Result;
156
+ /**
157
+ * Visit a parse tree produced by `python3-parser.tfpdef`.
158
+ * @param ctx the parse tree
159
+ * @return the visitor result
160
+ */
161
+ visitTfpdef?: (ctx: TfpdefContext) => Result;
162
+ /**
163
+ * Visit a parse tree produced by `python3-parser.varargslist`.
164
+ * @param ctx the parse tree
165
+ * @return the visitor result
166
+ */
167
+ visitVarargslist?: (ctx: VarargslistContext) => Result;
168
+ /**
169
+ * Visit a parse tree produced by `python3-parser.vfpdef`.
170
+ * @param ctx the parse tree
171
+ * @return the visitor result
172
+ */
173
+ visitVfpdef?: (ctx: VfpdefContext) => Result;
174
+ /**
175
+ * Visit a parse tree produced by `python3-parser.stmt`.
176
+ * @param ctx the parse tree
177
+ * @return the visitor result
178
+ */
179
+ visitStmt?: (ctx: StmtContext) => Result;
180
+ /**
181
+ * Visit a parse tree produced by `python3-parser.simple_stmt`.
182
+ * @param ctx the parse tree
183
+ * @return the visitor result
184
+ */
185
+ visitSimple_stmt?: (ctx: Simple_stmtContext) => Result;
186
+ /**
187
+ * Visit a parse tree produced by `python3-parser.small_stmt`.
188
+ * @param ctx the parse tree
189
+ * @return the visitor result
190
+ */
191
+ visitSmall_stmt?: (ctx: Small_stmtContext) => Result;
192
+ /**
193
+ * Visit a parse tree produced by `python3-parser.expr_stmt`.
194
+ * @param ctx the parse tree
195
+ * @return the visitor result
196
+ */
197
+ visitExpr_stmt?: (ctx: Expr_stmtContext) => Result;
198
+ /**
199
+ * Visit a parse tree produced by `python3-parser.annassign`.
200
+ * @param ctx the parse tree
201
+ * @return the visitor result
202
+ */
203
+ visitAnnassign?: (ctx: AnnassignContext) => Result;
204
+ /**
205
+ * Visit a parse tree produced by `python3-parser.testlist_star_expr`.
206
+ * @param ctx the parse tree
207
+ * @return the visitor result
208
+ */
209
+ visitTestlist_star_expr?: (ctx: Testlist_star_exprContext) => Result;
210
+ /**
211
+ * Visit a parse tree produced by `python3-parser.augassign`.
212
+ * @param ctx the parse tree
213
+ * @return the visitor result
214
+ */
215
+ visitAugassign?: (ctx: AugassignContext) => Result;
216
+ /**
217
+ * Visit a parse tree produced by `python3-parser.del_stmt`.
218
+ * @param ctx the parse tree
219
+ * @return the visitor result
220
+ */
221
+ visitDel_stmt?: (ctx: Del_stmtContext) => Result;
222
+ /**
223
+ * Visit a parse tree produced by `python3-parser.pass_stmt`.
224
+ * @param ctx the parse tree
225
+ * @return the visitor result
226
+ */
227
+ visitPass_stmt?: (ctx: Pass_stmtContext) => Result;
228
+ /**
229
+ * Visit a parse tree produced by `python3-parser.flow_stmt`.
230
+ * @param ctx the parse tree
231
+ * @return the visitor result
232
+ */
233
+ visitFlow_stmt?: (ctx: Flow_stmtContext) => Result;
234
+ /**
235
+ * Visit a parse tree produced by `python3-parser.break_stmt`.
236
+ * @param ctx the parse tree
237
+ * @return the visitor result
238
+ */
239
+ visitBreak_stmt?: (ctx: Break_stmtContext) => Result;
240
+ /**
241
+ * Visit a parse tree produced by `python3-parser.continue_stmt`.
242
+ * @param ctx the parse tree
243
+ * @return the visitor result
244
+ */
245
+ visitContinue_stmt?: (ctx: Continue_stmtContext) => Result;
246
+ /**
247
+ * Visit a parse tree produced by `python3-parser.return_stmt`.
248
+ * @param ctx the parse tree
249
+ * @return the visitor result
250
+ */
251
+ visitReturn_stmt?: (ctx: Return_stmtContext) => Result;
252
+ /**
253
+ * Visit a parse tree produced by `python3-parser.yield_stmt`.
254
+ * @param ctx the parse tree
255
+ * @return the visitor result
256
+ */
257
+ visitYield_stmt?: (ctx: Yield_stmtContext) => Result;
258
+ /**
259
+ * Visit a parse tree produced by `python3-parser.raise_stmt`.
260
+ * @param ctx the parse tree
261
+ * @return the visitor result
262
+ */
263
+ visitRaise_stmt?: (ctx: Raise_stmtContext) => Result;
264
+ /**
265
+ * Visit a parse tree produced by `python3-parser.import_stmt`.
266
+ * @param ctx the parse tree
267
+ * @return the visitor result
268
+ */
269
+ visitImport_stmt?: (ctx: Import_stmtContext) => Result;
270
+ /**
271
+ * Visit a parse tree produced by `python3-parser.import_name`.
272
+ * @param ctx the parse tree
273
+ * @return the visitor result
274
+ */
275
+ visitImport_name?: (ctx: Import_nameContext) => Result;
276
+ /**
277
+ * Visit a parse tree produced by `python3-parser.import_from`.
278
+ * @param ctx the parse tree
279
+ * @return the visitor result
280
+ */
281
+ visitImport_from?: (ctx: Import_fromContext) => Result;
282
+ /**
283
+ * Visit a parse tree produced by `python3-parser.import_as_name`.
284
+ * @param ctx the parse tree
285
+ * @return the visitor result
286
+ */
287
+ visitImport_as_name?: (ctx: Import_as_nameContext) => Result;
288
+ /**
289
+ * Visit a parse tree produced by `python3-parser.dotted_as_name`.
290
+ * @param ctx the parse tree
291
+ * @return the visitor result
292
+ */
293
+ visitDotted_as_name?: (ctx: Dotted_as_nameContext) => Result;
294
+ /**
295
+ * Visit a parse tree produced by `python3-parser.import_as_names`.
296
+ * @param ctx the parse tree
297
+ * @return the visitor result
298
+ */
299
+ visitImport_as_names?: (ctx: Import_as_namesContext) => Result;
300
+ /**
301
+ * Visit a parse tree produced by `python3-parser.dotted_as_names`.
302
+ * @param ctx the parse tree
303
+ * @return the visitor result
304
+ */
305
+ visitDotted_as_names?: (ctx: Dotted_as_namesContext) => Result;
306
+ /**
307
+ * Visit a parse tree produced by `python3-parser.dotted_name`.
308
+ * @param ctx the parse tree
309
+ * @return the visitor result
310
+ */
311
+ visitDotted_name?: (ctx: Dotted_nameContext) => Result;
312
+ /**
313
+ * Visit a parse tree produced by `python3-parser.global_stmt`.
314
+ * @param ctx the parse tree
315
+ * @return the visitor result
316
+ */
317
+ visitGlobal_stmt?: (ctx: Global_stmtContext) => Result;
318
+ /**
319
+ * Visit a parse tree produced by `python3-parser.nonlocal_stmt`.
320
+ * @param ctx the parse tree
321
+ * @return the visitor result
322
+ */
323
+ visitNonlocal_stmt?: (ctx: Nonlocal_stmtContext) => Result;
324
+ /**
325
+ * Visit a parse tree produced by `python3-parser.assert_stmt`.
326
+ * @param ctx the parse tree
327
+ * @return the visitor result
328
+ */
329
+ visitAssert_stmt?: (ctx: Assert_stmtContext) => Result;
330
+ /**
331
+ * Visit a parse tree produced by `python3-parser.compound_stmt`.
332
+ * @param ctx the parse tree
333
+ * @return the visitor result
334
+ */
335
+ visitCompound_stmt?: (ctx: Compound_stmtContext) => Result;
336
+ /**
337
+ * Visit a parse tree produced by `python3-parser.async_stmt`.
338
+ * @param ctx the parse tree
339
+ * @return the visitor result
340
+ */
341
+ visitAsync_stmt?: (ctx: Async_stmtContext) => Result;
342
+ /**
343
+ * Visit a parse tree produced by `python3-parser.if_stmt`.
344
+ * @param ctx the parse tree
345
+ * @return the visitor result
346
+ */
347
+ visitIf_stmt?: (ctx: If_stmtContext) => Result;
348
+ /**
349
+ * Visit a parse tree produced by `python3-parser.while_stmt`.
350
+ * @param ctx the parse tree
351
+ * @return the visitor result
352
+ */
353
+ visitWhile_stmt?: (ctx: While_stmtContext) => Result;
354
+ /**
355
+ * Visit a parse tree produced by `python3-parser.for_stmt`.
356
+ * @param ctx the parse tree
357
+ * @return the visitor result
358
+ */
359
+ visitFor_stmt?: (ctx: For_stmtContext) => Result;
360
+ /**
361
+ * Visit a parse tree produced by `python3-parser.try_stmt`.
362
+ * @param ctx the parse tree
363
+ * @return the visitor result
364
+ */
365
+ visitTry_stmt?: (ctx: Try_stmtContext) => Result;
366
+ /**
367
+ * Visit a parse tree produced by `python3-parser.with_stmt`.
368
+ * @param ctx the parse tree
369
+ * @return the visitor result
370
+ */
371
+ visitWith_stmt?: (ctx: With_stmtContext) => Result;
372
+ /**
373
+ * Visit a parse tree produced by `python3-parser.with_item`.
374
+ * @param ctx the parse tree
375
+ * @return the visitor result
376
+ */
377
+ visitWith_item?: (ctx: With_itemContext) => Result;
378
+ /**
379
+ * Visit a parse tree produced by `python3-parser.except_clause`.
380
+ * @param ctx the parse tree
381
+ * @return the visitor result
382
+ */
383
+ visitExcept_clause?: (ctx: Except_clauseContext) => Result;
384
+ /**
385
+ * Visit a parse tree produced by `python3-parser.suite`.
386
+ * @param ctx the parse tree
387
+ * @return the visitor result
388
+ */
389
+ visitSuite?: (ctx: SuiteContext) => Result;
390
+ /**
391
+ * Visit a parse tree produced by `python3-parser.test`.
392
+ * @param ctx the parse tree
393
+ * @return the visitor result
394
+ */
395
+ visitTest?: (ctx: TestContext) => Result;
396
+ /**
397
+ * Visit a parse tree produced by `python3-parser.test_nocond`.
398
+ * @param ctx the parse tree
399
+ * @return the visitor result
400
+ */
401
+ visitTest_nocond?: (ctx: Test_nocondContext) => Result;
402
+ /**
403
+ * Visit a parse tree produced by `python3-parser.lambdef`.
404
+ * @param ctx the parse tree
405
+ * @return the visitor result
406
+ */
407
+ visitLambdef?: (ctx: LambdefContext) => Result;
408
+ /**
409
+ * Visit a parse tree produced by `python3-parser.lambdef_nocond`.
410
+ * @param ctx the parse tree
411
+ * @return the visitor result
412
+ */
413
+ visitLambdef_nocond?: (ctx: Lambdef_nocondContext) => Result;
414
+ /**
415
+ * Visit a parse tree produced by `python3-parser.or_test`.
416
+ * @param ctx the parse tree
417
+ * @return the visitor result
418
+ */
419
+ visitOr_test?: (ctx: Or_testContext) => Result;
420
+ /**
421
+ * Visit a parse tree produced by `python3-parser.and_test`.
422
+ * @param ctx the parse tree
423
+ * @return the visitor result
424
+ */
425
+ visitAnd_test?: (ctx: And_testContext) => Result;
426
+ /**
427
+ * Visit a parse tree produced by `python3-parser.not_test`.
428
+ * @param ctx the parse tree
429
+ * @return the visitor result
430
+ */
431
+ visitNot_test?: (ctx: Not_testContext) => Result;
432
+ /**
433
+ * Visit a parse tree produced by `python3-parser.comparison`.
434
+ * @param ctx the parse tree
435
+ * @return the visitor result
436
+ */
437
+ visitComparison?: (ctx: ComparisonContext) => Result;
438
+ /**
439
+ * Visit a parse tree produced by `python3-parser.comp_op`.
440
+ * @param ctx the parse tree
441
+ * @return the visitor result
442
+ */
443
+ visitComp_op?: (ctx: Comp_opContext) => Result;
444
+ /**
445
+ * Visit a parse tree produced by `python3-parser.star_expr`.
446
+ * @param ctx the parse tree
447
+ * @return the visitor result
448
+ */
449
+ visitStar_expr?: (ctx: Star_exprContext) => Result;
450
+ /**
451
+ * Visit a parse tree produced by `python3-parser.expr`.
452
+ * @param ctx the parse tree
453
+ * @return the visitor result
454
+ */
455
+ visitExpr?: (ctx: ExprContext) => Result;
456
+ /**
457
+ * Visit a parse tree produced by `python3-parser.xor_expr`.
458
+ * @param ctx the parse tree
459
+ * @return the visitor result
460
+ */
461
+ visitXor_expr?: (ctx: Xor_exprContext) => Result;
462
+ /**
463
+ * Visit a parse tree produced by `python3-parser.and_expr`.
464
+ * @param ctx the parse tree
465
+ * @return the visitor result
466
+ */
467
+ visitAnd_expr?: (ctx: And_exprContext) => Result;
468
+ /**
469
+ * Visit a parse tree produced by `python3-parser.shift_expr`.
470
+ * @param ctx the parse tree
471
+ * @return the visitor result
472
+ */
473
+ visitShift_expr?: (ctx: Shift_exprContext) => Result;
474
+ /**
475
+ * Visit a parse tree produced by `python3-parser.arith_expr`.
476
+ * @param ctx the parse tree
477
+ * @return the visitor result
478
+ */
479
+ visitArith_expr?: (ctx: Arith_exprContext) => Result;
480
+ /**
481
+ * Visit a parse tree produced by `python3-parser.term`.
482
+ * @param ctx the parse tree
483
+ * @return the visitor result
484
+ */
485
+ visitTerm?: (ctx: TermContext) => Result;
486
+ /**
487
+ * Visit a parse tree produced by `python3-parser.factor`.
488
+ * @param ctx the parse tree
489
+ * @return the visitor result
490
+ */
491
+ visitFactor?: (ctx: FactorContext) => Result;
492
+ /**
493
+ * Visit a parse tree produced by `python3-parser.power`.
494
+ * @param ctx the parse tree
495
+ * @return the visitor result
496
+ */
497
+ visitPower?: (ctx: PowerContext) => Result;
498
+ /**
499
+ * Visit a parse tree produced by `python3-parser.atom_expr`.
500
+ * @param ctx the parse tree
501
+ * @return the visitor result
502
+ */
503
+ visitAtom_expr?: (ctx: Atom_exprContext) => Result;
504
+ /**
505
+ * Visit a parse tree produced by `python3-parser.atom`.
506
+ * @param ctx the parse tree
507
+ * @return the visitor result
508
+ */
509
+ visitAtom?: (ctx: AtomContext) => Result;
510
+ /**
511
+ * Visit a parse tree produced by `python3-parser.testlist_comp`.
512
+ * @param ctx the parse tree
513
+ * @return the visitor result
514
+ */
515
+ visitTestlist_comp?: (ctx: Testlist_compContext) => Result;
516
+ /**
517
+ * Visit a parse tree produced by `python3-parser.trailer`.
518
+ * @param ctx the parse tree
519
+ * @return the visitor result
520
+ */
521
+ visitTrailer?: (ctx: TrailerContext) => Result;
522
+ /**
523
+ * Visit a parse tree produced by `python3-parser.subscriptlist`.
524
+ * @param ctx the parse tree
525
+ * @return the visitor result
526
+ */
527
+ visitSubscriptlist?: (ctx: SubscriptlistContext) => Result;
528
+ /**
529
+ * Visit a parse tree produced by `python3-parser.subscript`.
530
+ * @param ctx the parse tree
531
+ * @return the visitor result
532
+ */
533
+ visitSubscript?: (ctx: SubscriptContext) => Result;
534
+ /**
535
+ * Visit a parse tree produced by `python3-parser.sliceop`.
536
+ * @param ctx the parse tree
537
+ * @return the visitor result
538
+ */
539
+ visitSliceop?: (ctx: SliceopContext) => Result;
540
+ /**
541
+ * Visit a parse tree produced by `python3-parser.exprlist`.
542
+ * @param ctx the parse tree
543
+ * @return the visitor result
544
+ */
545
+ visitExprlist?: (ctx: ExprlistContext) => Result;
546
+ /**
547
+ * Visit a parse tree produced by `python3-parser.testlist`.
548
+ * @param ctx the parse tree
549
+ * @return the visitor result
550
+ */
551
+ visitTestlist?: (ctx: TestlistContext) => Result;
552
+ /**
553
+ * Visit a parse tree produced by `python3-parser.dictorsetmaker`.
554
+ * @param ctx the parse tree
555
+ * @return the visitor result
556
+ */
557
+ visitDictorsetmaker?: (ctx: DictorsetmakerContext) => Result;
558
+ /**
559
+ * Visit a parse tree produced by `python3-parser.classdef`.
560
+ * @param ctx the parse tree
561
+ * @return the visitor result
562
+ */
563
+ visitClassdef?: (ctx: ClassdefContext) => Result;
564
+ /**
565
+ * Visit a parse tree produced by `python3-parser.arglist`.
566
+ * @param ctx the parse tree
567
+ * @return the visitor result
568
+ */
569
+ visitArglist?: (ctx: ArglistContext) => Result;
570
+ /**
571
+ * Visit a parse tree produced by `python3-parser.argument`.
572
+ * @param ctx the parse tree
573
+ * @return the visitor result
574
+ */
575
+ visitArgument?: (ctx: ArgumentContext) => Result;
576
+ /**
577
+ * Visit a parse tree produced by `python3-parser.comp_iter`.
578
+ * @param ctx the parse tree
579
+ * @return the visitor result
580
+ */
581
+ visitComp_iter?: (ctx: Comp_iterContext) => Result;
582
+ /**
583
+ * Visit a parse tree produced by `python3-parser.comp_for`.
584
+ * @param ctx the parse tree
585
+ * @return the visitor result
586
+ */
587
+ visitComp_for?: (ctx: Comp_forContext) => Result;
588
+ /**
589
+ * Visit a parse tree produced by `python3-parser.comp_if`.
590
+ * @param ctx the parse tree
591
+ * @return the visitor result
592
+ */
593
+ visitComp_if?: (ctx: Comp_ifContext) => Result;
594
+ /**
595
+ * Visit a parse tree produced by `python3-parser.encoding_decl`.
596
+ * @param ctx the parse tree
597
+ * @return the visitor result
598
+ */
599
+ visitEncoding_decl?: (ctx: Encoding_declContext) => Result;
600
+ /**
601
+ * Visit a parse tree produced by `python3-parser.yield_expr`.
602
+ * @param ctx the parse tree
603
+ * @return the visitor result
604
+ */
605
+ visitYield_expr?: (ctx: Yield_exprContext) => Result;
606
+ /**
607
+ * Visit a parse tree produced by `python3-parser.yield_arg`.
608
+ * @param ctx the parse tree
609
+ * @return the visitor result
610
+ */
611
+ visitYield_arg?: (ctx: Yield_argContext) => Result;
612
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=python3-visitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python3-visitor.js","sourceRoot":"","sources":["../../../../fontes/tradutores/python/python3-visitor.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const antlr4ts_1 = require("antlr4ts");
4
+ const ParseTreeWalker_1 = require("antlr4ts/tree/ParseTreeWalker");
5
+ const python3_lexer_1 = require("./python/python3-lexer");
6
+ const python3_parser_1 = require("./python/python3-parser");
7
+ /**
8
+ * Esse teste verifica o código passado dentro de `CharStreams.fromString()`.
9
+ * Aqui apenas testamos quais seções da gramática estamos passando.
10
+ */
11
+ class TesteListenerPython {
12
+ enterImport_name(ctx) {
13
+ console.log(`Linha do import: ${ctx._start.line}`);
14
+ }
15
+ exitImport_name(ctx) {
16
+ console.log(`Saiu do import: ${ctx._stop.text}`);
17
+ }
18
+ enterExpr(ctx) {
19
+ console.log(`Linha de expressão ${ctx._start.line}`);
20
+ }
21
+ }
22
+ // Criamos um Lexador e um avaliador sintático aqui.
23
+ let inputStream = antlr4ts_1.CharStreams.fromString("import json\nimport os\nimport sys\n");
24
+ let lexer = new python3_lexer_1.Python3Lexer(inputStream);
25
+ let tokenStream = new antlr4ts_1.CommonTokenStream(lexer);
26
+ let parser = new python3_parser_1.Python3Parser(tokenStream);
27
+ // Aqui criamos o Listener, que apenas fala por onde o caminhante de árvore sintática
28
+ // passou. Neste caso, testamos o ponto de entrada (file_input) e um método de
29
+ // importação.
30
+ let listener = new TesteListenerPython();
31
+ // Aqui achei três bons pontos de entrada:
32
+ // single_input, file_input e eval_input. O que funcionou melhor foi o file_input.
33
+ let tree = parser.file_input();
34
+ ParseTreeWalker_1.ParseTreeWalker.DEFAULT.walk(listener, tree);
35
+ //# sourceMappingURL=tradutor-python.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tradutor-python.js","sourceRoot":"","sources":["../../../fontes/tradutores/tradutor-python.ts"],"names":[],"mappings":";;AAAA,uCAA0D;AAC1D,mEAAgE;AAEhE,0DAAsD;AAEtD,4DAAyF;AAEzF;;;GAGG;AACH,MAAM,mBAAmB;IACrB,gBAAgB,CAAC,GAAuB;QACpC,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,eAAe,CAAC,GAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,SAAS,CAAC,GAAgB;QACtB,OAAO,CAAC,GAAG,CAAC,sBAAsB,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;CACJ;AAED,oDAAoD;AACpD,IAAI,WAAW,GAAG,sBAAW,CAAC,UAAU,CAAC,sCAAsC,CAAC,CAAC;AACjF,IAAI,KAAK,GAAG,IAAI,4BAAY,CAAC,WAAW,CAAC,CAAC;AAC1C,IAAI,WAAW,GAAG,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;AAC/C,IAAI,MAAM,GAAG,IAAI,8BAAa,CAAC,WAAW,CAAC,CAAC;AAE5C,qFAAqF;AACrF,+EAA+E;AAC/E,cAAc;AACd,IAAI,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAC;AAEzC,0CAA0C;AAC1C,kFAAkF;AAClF,IAAI,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;AAC/B,iCAAe,CAAC,OAAO,CAAC,IAAI,CAAC,QAAe,EAAE,IAAI,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@designliquido/delegua",
3
- "version": "0.14.4",
3
+ "version": "0.14.6",
4
4
  "description": "Linguagem de programação simples e moderna usando português estruturado, com suporte a múltiplos dialetos",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -63,6 +63,8 @@
63
63
  "@types/jest": "^29.4.0",
64
64
  "@typescript-eslint/eslint-plugin": "^5.46.1",
65
65
  "@typescript-eslint/parser": "^5.46.1",
66
+ "antlr4": "^4.12.0",
67
+ "antlr4ts-cli": "^0.5.0-alpha.4",
66
68
  "copyfiles": "^2.4.1",
67
69
  "eslint": "^8.29.0",
68
70
  "eslint-config-prettier": "^8.5.0",
@@ -79,6 +81,7 @@
79
81
  "typescript": "^4.9.4"
80
82
  },
81
83
  "dependencies": {
84
+ "antlr4ts": "^0.5.0-alpha.4",
82
85
  "browser-process-hrtime": "^1.0.0",
83
86
  "esprima": "^4.0.1"
84
87
  }