@designliquido/delegua 0.14.5 → 0.14.7
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.
- package/bin/package.json +4 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.d.ts +9 -8
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js +54 -28
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +8 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +94 -40
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -1
- package/fontes/formatadores/delegua.d.ts +8 -1
- package/fontes/formatadores/delegua.js +12 -29
- package/fontes/formatadores/delegua.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-portugol-studio.js +3 -1
- package/fontes/lexador/dialetos/lexador-portugol-studio.js.map +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.d.ts +3 -0
- package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.js +3 -0
- package/fontes/lexador/dialetos/palavras-reservadas/portugol-studio.js.map +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.d.ts +2 -0
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js +2 -0
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js.map +1 -1
- package/fontes/lexador/lexador-base.js +1 -1
- package/fontes/lexador/lexador-base.js.map +1 -1
- package/fontes/tipos-de-simbolos/portugol-studio.d.ts +2 -0
- package/fontes/tipos-de-simbolos/portugol-studio.js +2 -0
- package/fontes/tipos-de-simbolos/portugol-studio.js.map +1 -1
- package/fontes/tipos-de-simbolos/visualg.d.ts +2 -0
- package/fontes/tipos-de-simbolos/visualg.js +2 -0
- package/fontes/tipos-de-simbolos/visualg.js.map +1 -1
- package/fontes/tradutores/python/python3-lexer.d.ts +152 -0
- package/fontes/tradutores/python/python3-lexer.js +1227 -0
- package/fontes/tradutores/python/python3-lexer.js.map +1 -0
- package/fontes/tradutores/python/python3-listener.d.ts +953 -0
- package/fontes/tradutores/python/python3-listener.js +3 -0
- package/fontes/tradutores/python/python3-listener.js.map +1 -0
- package/fontes/tradutores/python/python3-parser.d.ts +1330 -0
- package/fontes/tradutores/python/python3-parser.js +11157 -0
- package/fontes/tradutores/python/python3-parser.js.map +1 -0
- package/fontes/tradutores/python/python3-visitor.d.ts +612 -0
- package/fontes/tradutores/python/python3-visitor.js +3 -0
- package/fontes/tradutores/python/python3-visitor.js.map +1 -0
- package/fontes/tradutores/tradutor-python.d.ts +1 -0
- package/fontes/tradutores/tradutor-python.js +35 -0
- package/fontes/tradutores/tradutor-python.js.map +1 -0
- 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 @@
|
|
|
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.
|
|
3
|
+
"version": "0.14.7",
|
|
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
|
}
|