@designliquido/delegua 0.37.0 → 0.37.1
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/avaliador-sintatico/avaliador-sintatico.d.ts.map +1 -1
- package/avaliador-sintatico/avaliador-sintatico.js +6 -5
- package/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
- package/bin/package.json +1 -1
- package/construtos/acesso-indice-variavel.d.ts +2 -2
- package/construtos/acesso-indice-variavel.d.ts.map +1 -1
- package/construtos/acesso-indice-variavel.js.map +1 -1
- package/construtos/atribuicao-por-indice.d.ts +4 -4
- package/construtos/atribuicao-por-indice.d.ts.map +1 -1
- package/construtos/atribuicao-por-indice.js.map +1 -1
- package/construtos/atribuir.d.ts +2 -3
- package/construtos/atribuir.d.ts.map +1 -1
- package/construtos/atribuir.js +1 -1
- package/construtos/atribuir.js.map +1 -1
- package/interpretador/interpretador-base.js.map +1 -1
- package/package.json +1 -1
- package/tradutores/tradutor-assemblyscript.d.ts.map +1 -1
- package/tradutores/tradutor-assemblyscript.js +3 -2
- package/tradutores/tradutor-assemblyscript.js.map +1 -1
- package/tradutores/tradutor-javascript.d.ts +4 -4
- package/tradutores/tradutor-javascript.d.ts.map +1 -1
- package/tradutores/tradutor-javascript.js +27 -24
- package/tradutores/tradutor-javascript.js.map +1 -1
- package/tradutores/tradutor-python.d.ts +20 -5
- package/tradutores/tradutor-python.d.ts.map +1 -1
- package/tradutores/tradutor-python.js +109 -55
- package/tradutores/tradutor-python.js.map +1 -1
- package/umd/delegua.js +146 -87
|
@@ -11,8 +11,10 @@ class TradutorPython {
|
|
|
11
11
|
constructor() {
|
|
12
12
|
this.indentacao = 0;
|
|
13
13
|
this.dicionarioConstrutos = {
|
|
14
|
-
AcessoMetodoOuPropriedade: this.
|
|
14
|
+
AcessoMetodoOuPropriedade: this.traduzirConstrutoAcessoMetodoOuPropriedade.bind(this),
|
|
15
|
+
AcessoIndiceVariavel: this.traduzirConstrutoAcessoIndiceVariavel.bind(this),
|
|
15
16
|
Agrupamento: this.traduzirConstrutoAgrupamento.bind(this),
|
|
17
|
+
AtribuicaoPorIndice: this.traduzirConstrutoAtribuicaoPorIndice.bind(this),
|
|
16
18
|
Atribuir: this.traduzirConstrutoAtribuir.bind(this),
|
|
17
19
|
Binario: this.traduzirConstrutoBinario.bind(this),
|
|
18
20
|
Chamada: this.traduzirConstrutoChamada.bind(this),
|
|
@@ -20,6 +22,7 @@ class TradutorPython {
|
|
|
20
22
|
DefinirValor: this.traduzirConstrutoDefinirValor.bind(this),
|
|
21
23
|
Literal: this.traduzirConstrutoLiteral.bind(this),
|
|
22
24
|
Logico: this.traduzirConstrutoLogico.bind(this),
|
|
25
|
+
Unario: this.traduzirConstrutoUnario.bind(this),
|
|
23
26
|
Variavel: this.traduzirConstrutoVariavel.bind(this),
|
|
24
27
|
Vetor: this.traduzirConstrutoVetor.bind(this),
|
|
25
28
|
};
|
|
@@ -29,10 +32,12 @@ class TradutorPython {
|
|
|
29
32
|
Comentario: this.traduzirConstrutoComentario.bind(this),
|
|
30
33
|
Const: this.traduzirDeclaracaoConst.bind(this),
|
|
31
34
|
Continua: () => 'continue',
|
|
35
|
+
Enquanto: this.traduzirDeclaracaoEnquanto.bind(this),
|
|
32
36
|
Escreva: this.traduzirDeclaracaoEscreva.bind(this),
|
|
33
37
|
Expressao: this.traduzirDeclaracaoExpressao.bind(this),
|
|
34
38
|
FuncaoDeclaracao: this.traduzirDeclaracaoFuncao.bind(this),
|
|
35
39
|
Leia: this.traduzirDeclaracaoLeia.bind(this),
|
|
40
|
+
Para: this.traduzirDeclaracaoPara.bind(this),
|
|
36
41
|
ParaCada: this.traduzirDeclaracaoParaCada.bind(this),
|
|
37
42
|
Retorna: this.traduzirDeclaracaoRetorna.bind(this),
|
|
38
43
|
Se: this.traduzirDeclaracaoSe.bind(this),
|
|
@@ -41,9 +46,6 @@ class TradutorPython {
|
|
|
41
46
|
Var: this.traduzirDeclaracaoVar.bind(this),
|
|
42
47
|
};
|
|
43
48
|
}
|
|
44
|
-
traduzirNomeVariavel(variavel) {
|
|
45
|
-
return variavel.replace(/\.?([A-Z]+)/g, (x, y) => '_' + y.toLowerCase()).replace(/^_/, '');
|
|
46
|
-
}
|
|
47
49
|
traduzirSimboloOperador(operador) {
|
|
48
50
|
switch (operador.tipo) {
|
|
49
51
|
case delegua_1.default.ADICAO:
|
|
@@ -113,6 +115,8 @@ class TradutorPython {
|
|
|
113
115
|
return 'lower';
|
|
114
116
|
case 'substituir':
|
|
115
117
|
return 'replace';
|
|
118
|
+
case 'texto':
|
|
119
|
+
return 'str';
|
|
116
120
|
default:
|
|
117
121
|
return metodo;
|
|
118
122
|
}
|
|
@@ -137,7 +141,12 @@ class TradutorPython {
|
|
|
137
141
|
resultado += ' '.repeat(this.indentacao) + '\n';
|
|
138
142
|
return resultado;
|
|
139
143
|
}
|
|
140
|
-
|
|
144
|
+
traduzirConstrutoAcessoIndiceVariavel(acessoIndiceVariavel) {
|
|
145
|
+
const entidade = this.dicionarioConstrutos[acessoIndiceVariavel.entidadeChamada.constructor.name](acessoIndiceVariavel.entidadeChamada);
|
|
146
|
+
const indice = this.dicionarioConstrutos[acessoIndiceVariavel.indice.constructor.name](acessoIndiceVariavel.indice);
|
|
147
|
+
return `${entidade}[${indice}]`;
|
|
148
|
+
}
|
|
149
|
+
traduzirConstrutoAcessoMetodoOuPropriedade(acessoMetodo) {
|
|
141
150
|
if (acessoMetodo.objeto instanceof construtos_1.Variavel) {
|
|
142
151
|
let objetoVariavel = acessoMetodo.objeto;
|
|
143
152
|
let funcaoTraduzida = this.traduzirFuncoesNativas(acessoMetodo.simbolo.lexema);
|
|
@@ -154,6 +163,12 @@ class TradutorPython {
|
|
|
154
163
|
traduzirConstrutoAgrupamento(agrupamento) {
|
|
155
164
|
return this.dicionarioConstrutos[agrupamento.constructor.name](agrupamento.expressao || agrupamento);
|
|
156
165
|
}
|
|
166
|
+
traduzirConstrutoAtribuicaoPorIndice(atribuicaoPorIndice) {
|
|
167
|
+
const objeto = this.dicionarioConstrutos[atribuicaoPorIndice.objeto.constructor.name](atribuicaoPorIndice.objeto);
|
|
168
|
+
const indice = this.dicionarioConstrutos[atribuicaoPorIndice.indice.constructor.name](atribuicaoPorIndice.indice);
|
|
169
|
+
const valor = this.dicionarioConstrutos[atribuicaoPorIndice.valor.constructor.name](atribuicaoPorIndice.valor);
|
|
170
|
+
return `${objeto}[${indice}] = ${valor}`;
|
|
171
|
+
}
|
|
157
172
|
traduzirConstrutoAtribuir(atribuir) {
|
|
158
173
|
let resultado = atribuir.simbolo.lexema;
|
|
159
174
|
resultado += ' = ' + this.dicionarioConstrutos[atribuir.valor.constructor.name](atribuir.valor);
|
|
@@ -227,18 +242,31 @@ class TradutorPython {
|
|
|
227
242
|
if (typeof literal.valor === 'boolean') {
|
|
228
243
|
return literal.valor ? 'True' : 'False';
|
|
229
244
|
}
|
|
245
|
+
if (typeof literal.valor === 'number') {
|
|
246
|
+
return String(literal.valor);
|
|
247
|
+
}
|
|
230
248
|
if (!literal.valor)
|
|
231
249
|
return 'None';
|
|
232
250
|
return literal.valor;
|
|
233
251
|
}
|
|
234
252
|
traduzirConstrutoLogico(logico) {
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
253
|
+
const direita = this.dicionarioConstrutos[logico.direita.constructor.name](logico.direita);
|
|
254
|
+
const operador = this.traduzirSimboloOperador(logico.operador);
|
|
255
|
+
const esquerda = this.dicionarioConstrutos[logico.esquerda.constructor.name](logico.esquerda);
|
|
238
256
|
return `${esquerda} ${operador} ${direita}`;
|
|
239
257
|
}
|
|
258
|
+
traduzirConstrutoUnario(unario) {
|
|
259
|
+
const operador = this.traduzirSimboloOperador(unario.operador);
|
|
260
|
+
const operando = this.dicionarioConstrutos[unario.operando.constructor.name](unario.operando);
|
|
261
|
+
switch (unario.incidenciaOperador) {
|
|
262
|
+
case 'ANTES':
|
|
263
|
+
return `${operador}${operando}`;
|
|
264
|
+
case 'DEPOIS':
|
|
265
|
+
return `${operando}${operador}`;
|
|
266
|
+
}
|
|
267
|
+
}
|
|
240
268
|
traduzirConstrutoVariavel(variavel) {
|
|
241
|
-
return variavel.simbolo.lexema;
|
|
269
|
+
return this.traduzirFuncoesNativas(variavel.simbolo.lexema);
|
|
242
270
|
}
|
|
243
271
|
traduzirConstrutoVetor(vetor) {
|
|
244
272
|
if (!vetor.valores.length) {
|
|
@@ -254,45 +282,6 @@ class TradutorPython {
|
|
|
254
282
|
resultado += ']';
|
|
255
283
|
return resultado;
|
|
256
284
|
}
|
|
257
|
-
traduzirDeclaracaoSe(declaracaoSe, iniciarComIf = true) {
|
|
258
|
-
let resultado = '';
|
|
259
|
-
if (iniciarComIf) {
|
|
260
|
-
resultado += 'if ';
|
|
261
|
-
}
|
|
262
|
-
else {
|
|
263
|
-
resultado += 'elif ';
|
|
264
|
-
}
|
|
265
|
-
const condicao = this.dicionarioConstrutos[declaracaoSe.condicao.constructor.name](declaracaoSe.condicao);
|
|
266
|
-
resultado += condicao;
|
|
267
|
-
resultado += ':\n';
|
|
268
|
-
resultado += this.dicionarioDeclaracoes[declaracaoSe.caminhoEntao.constructor.name](declaracaoSe.caminhoEntao);
|
|
269
|
-
if (declaracaoSe.caminhoSenao !== null) {
|
|
270
|
-
resultado += ' '.repeat(this.indentacao);
|
|
271
|
-
const se = declaracaoSe === null || declaracaoSe === void 0 ? void 0 : declaracaoSe.caminhoSenao;
|
|
272
|
-
if (se === null || se === void 0 ? void 0 : se.caminhoEntao) {
|
|
273
|
-
resultado += 'elif ';
|
|
274
|
-
resultado += this.dicionarioConstrutos[se.condicao.constructor.name](se.condicao, false);
|
|
275
|
-
resultado += ':\n';
|
|
276
|
-
resultado += this.dicionarioDeclaracoes[se.caminhoEntao.constructor.name](se.caminhoEntao);
|
|
277
|
-
resultado += ' '.repeat(this.indentacao);
|
|
278
|
-
if (se === null || se === void 0 ? void 0 : se.caminhoSenao) {
|
|
279
|
-
if (se.caminhoSenao instanceof declaracoes_1.Bloco) {
|
|
280
|
-
resultado += 'else:\n';
|
|
281
|
-
resultado += this.dicionarioDeclaracoes[se.caminhoSenao.constructor.name](se.caminhoSenao, false);
|
|
282
|
-
return resultado;
|
|
283
|
-
}
|
|
284
|
-
else {
|
|
285
|
-
resultado += this.dicionarioDeclaracoes[se.caminhoSenao.constructor.name](se.caminhoSenao, false);
|
|
286
|
-
return resultado;
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
resultado += 'else:\n';
|
|
291
|
-
resultado += ' '.repeat(this.indentacao);
|
|
292
|
-
resultado += this.dicionarioDeclaracoes[declaracaoSe.caminhoSenao.constructor.name](declaracaoSe.caminhoSenao);
|
|
293
|
-
}
|
|
294
|
-
return resultado;
|
|
295
|
-
}
|
|
296
285
|
logicaTraducaoMetodoClasse(metodoClasse) {
|
|
297
286
|
this.indentacao += 4;
|
|
298
287
|
let resultado = ' '.repeat(this.indentacao);
|
|
@@ -335,9 +324,7 @@ class TradutorPython {
|
|
|
335
324
|
return resultado;
|
|
336
325
|
}
|
|
337
326
|
traduzirDeclaracaoConst(declaracaoConst) {
|
|
338
|
-
let resultado = '';
|
|
339
|
-
resultado += this.traduzirNomeVariavel(declaracaoConst.simbolo.lexema);
|
|
340
|
-
resultado += ' = ';
|
|
327
|
+
let resultado = declaracaoConst.simbolo.lexema + ' = ';
|
|
341
328
|
const inicializador = declaracaoConst.inicializador;
|
|
342
329
|
if (inicializador) {
|
|
343
330
|
if (this.dicionarioConstrutos[inicializador.constructor.name]) {
|
|
@@ -352,6 +339,13 @@ class TradutorPython {
|
|
|
352
339
|
}
|
|
353
340
|
return resultado;
|
|
354
341
|
}
|
|
342
|
+
traduzirDeclaracaoEnquanto(declaracaoEnquanto) {
|
|
343
|
+
let resultado = ' '.repeat(this.indentacao) + 'while ';
|
|
344
|
+
const condicao = this.dicionarioConstrutos[declaracaoEnquanto.condicao.constructor.name](declaracaoEnquanto.condicao);
|
|
345
|
+
resultado += condicao + ':\n';
|
|
346
|
+
resultado += this.dicionarioDeclaracoes[declaracaoEnquanto.corpo.constructor.name](declaracaoEnquanto.corpo);
|
|
347
|
+
return resultado;
|
|
348
|
+
}
|
|
355
349
|
traduzirDeclaracaoEscreva(declaracaoEscreva) {
|
|
356
350
|
let resultado = 'print(';
|
|
357
351
|
for (const argumento of declaracaoEscreva.argumentos) {
|
|
@@ -374,7 +368,7 @@ class TradutorPython {
|
|
|
374
368
|
if (declaracaoFuncao.funcao.parametros.length > 0) {
|
|
375
369
|
resultado = resultado.slice(0, -2);
|
|
376
370
|
}
|
|
377
|
-
resultado += ')
|
|
371
|
+
resultado += '):\n';
|
|
378
372
|
resultado += this.logicaComumBlocoEscopo(declaracaoFuncao.funcao.corpo);
|
|
379
373
|
return resultado;
|
|
380
374
|
}
|
|
@@ -388,6 +382,32 @@ class TradutorPython {
|
|
|
388
382
|
resultado += ')';
|
|
389
383
|
return resultado;
|
|
390
384
|
}
|
|
385
|
+
/**
|
|
386
|
+
* Como não existe declaração `para` com variáveis de controle em Python, o
|
|
387
|
+
* que tentamos aqui é criar a mesma coisa usando `while()`.
|
|
388
|
+
* @param declaracaoPara A declaração `Para`.
|
|
389
|
+
* @returns Um bloco equivalente ao que seria um bloco `for` com variáveis de controle em Python.
|
|
390
|
+
*/
|
|
391
|
+
traduzirDeclaracaoPara(declaracaoPara) {
|
|
392
|
+
let resultado = '';
|
|
393
|
+
// Em uma declaração `Para` em Delégua, são obrigatórios a condição e o incremento.
|
|
394
|
+
if (declaracaoPara.inicializador) {
|
|
395
|
+
if (Array.isArray(declaracaoPara.inicializador)) {
|
|
396
|
+
for (const declaracaoInicializador of declaracaoPara.inicializador) {
|
|
397
|
+
resultado += this.dicionarioDeclaracoes[declaracaoInicializador.constructor.name](declaracaoInicializador) + `\n`;
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
else {
|
|
401
|
+
resultado += this.dicionarioDeclaracoes[declaracaoPara.inicializador.constructor.name](declaracaoPara.inicializador) + `\n`;
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
const condicao = this.dicionarioConstrutos[declaracaoPara.condicao.constructor.name](declaracaoPara.condicao);
|
|
405
|
+
resultado += ' '.repeat(this.indentacao) + `while ${condicao}:\n`;
|
|
406
|
+
// O incremento passa a ser a última instrução do bloco.
|
|
407
|
+
declaracaoPara.corpo.declaracoes.push(new declaracoes_1.Expressao(declaracaoPara.incrementar));
|
|
408
|
+
resultado += this.dicionarioDeclaracoes[declaracaoPara.corpo.constructor.name](declaracaoPara.corpo);
|
|
409
|
+
return resultado;
|
|
410
|
+
}
|
|
391
411
|
traduzirDeclaracaoParaCada(declaracaoParaCada) {
|
|
392
412
|
let resultado = `for ${declaracaoParaCada.nomeVariavelIteracao} in `;
|
|
393
413
|
resultado +=
|
|
@@ -400,6 +420,42 @@ class TradutorPython {
|
|
|
400
420
|
const nomeConstrutor = declaracaoRetorna.valor.constructor.name;
|
|
401
421
|
return (resultado += this.dicionarioConstrutos[nomeConstrutor](declaracaoRetorna === null || declaracaoRetorna === void 0 ? void 0 : declaracaoRetorna.valor));
|
|
402
422
|
}
|
|
423
|
+
traduzirDeclaracaoSe(declaracaoSe, iniciarComIf = true) {
|
|
424
|
+
let resultado = '';
|
|
425
|
+
if (iniciarComIf) {
|
|
426
|
+
resultado += 'if ';
|
|
427
|
+
}
|
|
428
|
+
else {
|
|
429
|
+
resultado += 'elif ';
|
|
430
|
+
}
|
|
431
|
+
const condicao = this.dicionarioConstrutos[declaracaoSe.condicao.constructor.name](declaracaoSe.condicao);
|
|
432
|
+
resultado += condicao;
|
|
433
|
+
resultado += ':\n';
|
|
434
|
+
resultado += this.dicionarioDeclaracoes[declaracaoSe.caminhoEntao.constructor.name](declaracaoSe.caminhoEntao);
|
|
435
|
+
if (declaracaoSe.caminhoSenao) {
|
|
436
|
+
resultado += ' '.repeat(this.indentacao);
|
|
437
|
+
const senao = declaracaoSe.caminhoSenao;
|
|
438
|
+
if (senao === null || senao === void 0 ? void 0 : senao.caminhoEntao) {
|
|
439
|
+
resultado += 'elif ';
|
|
440
|
+
resultado += this.dicionarioConstrutos[senao.condicao.constructor.name](senao.condicao, false);
|
|
441
|
+
resultado += ':\n';
|
|
442
|
+
resultado += this.dicionarioDeclaracoes[senao.caminhoEntao.constructor.name](senao.caminhoEntao);
|
|
443
|
+
resultado += ' '.repeat(this.indentacao);
|
|
444
|
+
if (senao === null || senao === void 0 ? void 0 : senao.caminhoSenao) {
|
|
445
|
+
if (senao.caminhoSenao instanceof declaracoes_1.Bloco) {
|
|
446
|
+
resultado += 'else:\n';
|
|
447
|
+
resultado += this.dicionarioDeclaracoes[senao.caminhoSenao.constructor.name](senao.caminhoSenao, false);
|
|
448
|
+
return resultado;
|
|
449
|
+
}
|
|
450
|
+
resultado += this.dicionarioDeclaracoes[senao.caminhoSenao.constructor.name](senao.caminhoSenao, false);
|
|
451
|
+
return resultado;
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
resultado += 'else:\n';
|
|
455
|
+
resultado += this.dicionarioDeclaracoes[declaracaoSe.caminhoSenao.constructor.name](declaracaoSe.caminhoSenao);
|
|
456
|
+
}
|
|
457
|
+
return resultado;
|
|
458
|
+
}
|
|
403
459
|
traduzirDeclaracaoTente(declaracaoTente) {
|
|
404
460
|
let resultado = 'try:\n';
|
|
405
461
|
this.indentacao += 4;
|
|
@@ -433,9 +489,7 @@ class TradutorPython {
|
|
|
433
489
|
return resultado;
|
|
434
490
|
}
|
|
435
491
|
traduzirDeclaracaoVar(declaracaoVar) {
|
|
436
|
-
let resultado = '';
|
|
437
|
-
resultado += this.traduzirNomeVariavel(declaracaoVar.simbolo.lexema);
|
|
438
|
-
resultado += ' = ';
|
|
492
|
+
let resultado = declaracaoVar.simbolo.lexema + ' = ';
|
|
439
493
|
const inicializador = declaracaoVar.inicializador;
|
|
440
494
|
if (inicializador) {
|
|
441
495
|
if (this.dicionarioConstrutos[inicializador.constructor.name]) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tradutor-python.js","sourceRoot":"","sources":["../../fontes/tradutores/tradutor-python.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tradutor-python.js","sourceRoot":"","sources":["../../fontes/tradutores/tradutor-python.ts"],"names":[],"mappings":"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"}
|