@designliquido/delegua 0.33.7 → 0.33.9

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 (98) hide show
  1. package/analisador-semantico/dialetos/index.d.ts +0 -1
  2. package/analisador-semantico/dialetos/index.d.ts.map +1 -1
  3. package/analisador-semantico/dialetos/index.js +0 -1
  4. package/analisador-semantico/dialetos/index.js.map +1 -1
  5. package/avaliador-sintatico/dialetos/index.d.ts +0 -1
  6. package/avaliador-sintatico/dialetos/index.d.ts.map +1 -1
  7. package/avaliador-sintatico/dialetos/index.js +0 -1
  8. package/avaliador-sintatico/dialetos/index.js.map +1 -1
  9. package/bibliotecas/biblioteca-global.js +3 -3
  10. package/bibliotecas/biblioteca-global.js.map +1 -1
  11. package/bin/package.json +1 -1
  12. package/formatadores/index.d.ts +0 -1
  13. package/formatadores/index.d.ts.map +1 -1
  14. package/formatadores/index.js +0 -1
  15. package/formatadores/index.js.map +1 -1
  16. package/interpretador/dialetos/index.d.ts +0 -1
  17. package/interpretador/dialetos/index.d.ts.map +1 -1
  18. package/interpretador/dialetos/index.js +0 -1
  19. package/interpretador/dialetos/index.js.map +1 -1
  20. package/interpretador/interpretador-base.d.ts.map +1 -1
  21. package/interpretador/interpretador-base.js +6 -2
  22. package/interpretador/interpretador-base.js.map +1 -1
  23. package/interpretador/interpretador-com-depuracao.d.ts.map +1 -1
  24. package/interpretador/interpretador-com-depuracao.js +8 -6
  25. package/interpretador/interpretador-com-depuracao.js.map +1 -1
  26. package/lexador/dialetos/index.d.ts +0 -1
  27. package/lexador/dialetos/index.d.ts.map +1 -1
  28. package/lexador/dialetos/index.js +0 -1
  29. package/lexador/dialetos/index.js.map +1 -1
  30. package/lexador/dialetos/palavras-reservadas/index.d.ts +0 -1
  31. package/lexador/dialetos/palavras-reservadas/index.d.ts.map +1 -1
  32. package/lexador/dialetos/palavras-reservadas/index.js +1 -3
  33. package/lexador/dialetos/palavras-reservadas/index.js.map +1 -1
  34. package/package.json +1 -1
  35. package/tradutores/index.d.ts +0 -1
  36. package/tradutores/index.d.ts.map +1 -1
  37. package/tradutores/index.js +0 -1
  38. package/tradutores/index.js.map +1 -1
  39. package/analisador-semantico/dialetos/analisador-semantico-visualg.d.ts +0 -38
  40. package/analisador-semantico/dialetos/analisador-semantico-visualg.d.ts.map +0 -1
  41. package/analisador-semantico/dialetos/analisador-semantico-visualg.js +0 -229
  42. package/analisador-semantico/dialetos/analisador-semantico-visualg.js.map +0 -1
  43. package/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.d.ts +0 -85
  44. package/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.d.ts.map +0 -1
  45. package/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.js +0 -731
  46. package/avaliador-sintatico/dialetos/visualg/avaliador-sintatico-visualg.js.map +0 -1
  47. package/avaliador-sintatico/dialetos/visualg/index.d.ts +0 -2
  48. package/avaliador-sintatico/dialetos/visualg/index.d.ts.map +0 -1
  49. package/avaliador-sintatico/dialetos/visualg/index.js +0 -18
  50. package/avaliador-sintatico/dialetos/visualg/index.js.map +0 -1
  51. package/avaliador-sintatico/dialetos/visualg/parametro-visualg.d.ts +0 -8
  52. package/avaliador-sintatico/dialetos/visualg/parametro-visualg.d.ts.map +0 -1
  53. package/avaliador-sintatico/dialetos/visualg/parametro-visualg.js +0 -3
  54. package/avaliador-sintatico/dialetos/visualg/parametro-visualg.js.map +0 -1
  55. package/bibliotecas/dialetos/visualg/caracteres.d.ts +0 -4
  56. package/bibliotecas/dialetos/visualg/caracteres.d.ts.map +0 -1
  57. package/bibliotecas/dialetos/visualg/caracteres.js +0 -46
  58. package/bibliotecas/dialetos/visualg/caracteres.js.map +0 -1
  59. package/bibliotecas/dialetos/visualg/index.d.ts +0 -3
  60. package/bibliotecas/dialetos/visualg/index.d.ts.map +0 -1
  61. package/bibliotecas/dialetos/visualg/index.js +0 -19
  62. package/bibliotecas/dialetos/visualg/index.js.map +0 -1
  63. package/bibliotecas/dialetos/visualg/numerica.d.ts +0 -4
  64. package/bibliotecas/dialetos/visualg/numerica.d.ts.map +0 -1
  65. package/bibliotecas/dialetos/visualg/numerica.js +0 -74
  66. package/bibliotecas/dialetos/visualg/numerica.js.map +0 -1
  67. package/formatadores/formatador-visualg.d.ts +0 -73
  68. package/formatadores/formatador-visualg.d.ts.map +0 -1
  69. package/formatadores/formatador-visualg.js +0 -617
  70. package/formatadores/formatador-visualg.js.map +0 -1
  71. package/interpretador/dialetos/visualg/comum.d.ts +0 -21
  72. package/interpretador/dialetos/visualg/comum.d.ts.map +0 -1
  73. package/interpretador/dialetos/visualg/comum.js +0 -372
  74. package/interpretador/dialetos/visualg/comum.js.map +0 -1
  75. package/interpretador/dialetos/visualg/index.d.ts +0 -3
  76. package/interpretador/dialetos/visualg/index.d.ts.map +0 -1
  77. package/interpretador/dialetos/visualg/index.js +0 -19
  78. package/interpretador/dialetos/visualg/index.js.map +0 -1
  79. package/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.d.ts +0 -55
  80. package/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.d.ts.map +0 -1
  81. package/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.js +0 -211
  82. package/interpretador/dialetos/visualg/interpretador-visualg-com-depuracao.js.map +0 -1
  83. package/interpretador/dialetos/visualg/interpretador-visualg.d.ts +0 -58
  84. package/interpretador/dialetos/visualg/interpretador-visualg.d.ts.map +0 -1
  85. package/interpretador/dialetos/visualg/interpretador-visualg.js +0 -194
  86. package/interpretador/dialetos/visualg/interpretador-visualg.js.map +0 -1
  87. package/lexador/dialetos/lexador-visualg.d.ts +0 -20
  88. package/lexador/dialetos/lexador-visualg.d.ts.map +0 -1
  89. package/lexador/dialetos/lexador-visualg.js +0 -226
  90. package/lexador/dialetos/lexador-visualg.js.map +0 -1
  91. package/lexador/dialetos/palavras-reservadas/visualg.d.ts +0 -75
  92. package/lexador/dialetos/palavras-reservadas/visualg.d.ts.map +0 -1
  93. package/lexador/dialetos/palavras-reservadas/visualg.js +0 -82
  94. package/lexador/dialetos/palavras-reservadas/visualg.js.map +0 -1
  95. package/tradutores/tradutor-reverso-visualg.d.ts +0 -54
  96. package/tradutores/tradutor-reverso-visualg.d.ts.map +0 -1
  97. package/tradutores/tradutor-reverso-visualg.js +0 -264
  98. package/tradutores/tradutor-reverso-visualg.js.map +0 -1
@@ -1,264 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TradutorReversoVisuAlg = void 0;
7
- const delegua_1 = __importDefault(require("../tipos-de-simbolos/delegua"));
8
- /**
9
- * Este tradutor reverso traduz de VisuAlg para Delégua.
10
- */
11
- class TradutorReversoVisuAlg {
12
- constructor() {
13
- this.indentacao = 0;
14
- this.dicionarioConstrutos = {
15
- Agrupamento: this.traduzirConstrutoAgrupamento.bind(this),
16
- Atribuir: this.traduzirConstrutoAtribuir.bind(this),
17
- Binario: this.traduzirConstrutoBinario.bind(this),
18
- FimPara: this.traduzirConstrutoFimPara.bind(this),
19
- Literal: this.traduzirConstrutoLiteral.bind(this),
20
- Logico: this.traduzirConstrutoLogico.bind(this),
21
- Variavel: this.traduzirConstrutoVariavel.bind(this),
22
- };
23
- this.dicionarioDeclaracoes = {
24
- Bloco: this.traduzirDeclaracaoBloco.bind(this),
25
- CabecalhoPrograma: () => '',
26
- EscrevaMesmaLinha: this.traduzirDeclaracaoEscrevaMesmaLinha.bind(this),
27
- Escolha: this.traduzirDeclaracaoEscolha.bind(this),
28
- Escreva: this.traduzirDeclaracaoEscreva.bind(this),
29
- Expressao: this.traduzirDeclaracaoExpressao.bind(this),
30
- FimPara: this.traduzirDeclaracaoFimPara.bind(this),
31
- InicioAlgoritmo: () => '',
32
- Leia: this.traduzirDeclaracaoLeia.bind(this),
33
- Para: this.traduzirDeclaracaoPara.bind(this),
34
- Se: this.traduzirDeclaracaoSe.bind(this),
35
- Var: this.traduzirDeclaracaoVar.bind(this),
36
- };
37
- }
38
- traduzirSimboloOperador(operador) {
39
- switch (operador.tipo) {
40
- case delegua_1.default.ADICAO:
41
- return '+';
42
- case delegua_1.default.BIT_AND:
43
- return '&';
44
- case delegua_1.default.BIT_OR:
45
- return '|';
46
- case delegua_1.default.BIT_XOR:
47
- return '^';
48
- case delegua_1.default.BIT_NOT:
49
- return '~';
50
- case delegua_1.default.DIFERENTE:
51
- return '!=';
52
- case delegua_1.default.DIVISAO:
53
- return '/';
54
- case delegua_1.default.E:
55
- return 'e';
56
- case delegua_1.default.EXPONENCIACAO:
57
- return '**';
58
- case delegua_1.default.IGUAL:
59
- return '=';
60
- case delegua_1.default.IGUAL_IGUAL:
61
- return '==';
62
- case delegua_1.default.MAIOR:
63
- return '>';
64
- case delegua_1.default.MAIOR_IGUAL:
65
- return '>=';
66
- case delegua_1.default.MENOR:
67
- return '<';
68
- case delegua_1.default.MENOR_IGUAL:
69
- return '<=';
70
- case delegua_1.default.MODULO:
71
- return '%';
72
- case delegua_1.default.MULTIPLICACAO:
73
- return '*';
74
- case delegua_1.default.OU:
75
- return 'ou';
76
- case delegua_1.default.SUBTRACAO:
77
- return '-';
78
- }
79
- }
80
- traduzirConstrutoAgrupamento(agrupamento) {
81
- return this.dicionarioConstrutos[agrupamento.constructor.name](agrupamento.expressao || agrupamento);
82
- }
83
- traduzirConstrutoAtribuir(atribuir) {
84
- let resultado = atribuir.simbolo.lexema;
85
- resultado += ' = ' + this.dicionarioConstrutos[atribuir.valor.constructor.name](atribuir.valor);
86
- return resultado;
87
- }
88
- traduzirConstrutoBinario(binario) {
89
- let resultado = '';
90
- if (binario.esquerda.constructor.name === 'Agrupamento')
91
- resultado += '(' + this.dicionarioConstrutos[binario.esquerda.constructor.name](binario.esquerda) + ')';
92
- else
93
- resultado += this.dicionarioConstrutos[binario.esquerda.constructor.name](binario.esquerda);
94
- let operador = this.traduzirSimboloOperador(binario.operador);
95
- resultado += ` ${operador} `;
96
- if (binario.direita.constructor.name === 'Agrupamento')
97
- resultado += '(' + this.dicionarioConstrutos[binario.direita.constructor.name](binario.direita) + ')';
98
- else
99
- resultado += this.dicionarioConstrutos[binario.direita.constructor.name](binario.direita);
100
- return resultado;
101
- }
102
- traduzirConstrutoFimPara(fimPara) {
103
- if (fimPara.incremento === null || fimPara.incremento === undefined) {
104
- return '';
105
- }
106
- const expressao = fimPara.incremento;
107
- const atribuir = expressao.expressao;
108
- const variavel = atribuir.simbolo.lexema;
109
- return `${variavel}++`;
110
- }
111
- traduzirConstrutoLiteral(literal) {
112
- if (typeof literal.valor === 'string')
113
- return `'${literal.valor}'`;
114
- return literal.valor;
115
- }
116
- traduzirConstrutoVariavel(variavel) {
117
- return variavel.simbolo.lexema;
118
- }
119
- logicaComumBlocoEscopo(declaracoes) {
120
- let resultado = '{\n';
121
- this.indentacao += 4;
122
- if (typeof declaracoes[Symbol.iterator] === 'function') {
123
- for (const declaracaoOuConstruto of declaracoes) {
124
- resultado += ' '.repeat(this.indentacao);
125
- const nomeConstrutor = declaracaoOuConstruto.constructor.name;
126
- if (this.dicionarioConstrutos.hasOwnProperty(nomeConstrutor)) {
127
- resultado += this.dicionarioConstrutos[nomeConstrutor](declaracaoOuConstruto);
128
- }
129
- else {
130
- resultado += this.dicionarioDeclaracoes[nomeConstrutor](declaracaoOuConstruto);
131
- }
132
- resultado += '\n';
133
- }
134
- }
135
- this.indentacao -= 4;
136
- resultado += ' '.repeat(this.indentacao) + '}\n';
137
- return resultado;
138
- }
139
- traduzirDeclaracaoBloco(declaracaoBloco) {
140
- return this.logicaComumBlocoEscopo(declaracaoBloco.declaracoes);
141
- }
142
- logicaComumCaminhosEscolha(caminho) {
143
- var _a, _b;
144
- let resultado = '';
145
- this.indentacao += 4;
146
- resultado += ' '.repeat(this.indentacao);
147
- if ((_a = caminho === null || caminho === void 0 ? void 0 : caminho.condicoes) === null || _a === void 0 ? void 0 : _a.length) {
148
- for (let condicao of caminho.condicoes) {
149
- resultado += 'caso ' + this.dicionarioConstrutos[condicao.constructor.name](condicao) + ':\n';
150
- resultado += ' '.repeat(this.indentacao);
151
- }
152
- }
153
- if ((_b = caminho === null || caminho === void 0 ? void 0 : caminho.declaracoes) === null || _b === void 0 ? void 0 : _b.length) {
154
- for (let declaracao of caminho.declaracoes) {
155
- resultado += ' '.repeat(this.indentacao + 4);
156
- resultado += this.dicionarioDeclaracoes[declaracao.constructor.name](declaracao) + '\n';
157
- }
158
- resultado += ' '.repeat(this.indentacao + 4);
159
- }
160
- this.indentacao -= 4;
161
- return resultado;
162
- }
163
- traduzirDeclaracaoEscolha(declaracaoEscolha) {
164
- let resultado = 'escolha (';
165
- resultado +=
166
- this.dicionarioConstrutos[declaracaoEscolha.identificadorOuLiteral.constructor.name](declaracaoEscolha.identificadorOuLiteral) + ') {\n';
167
- for (let caminho of declaracaoEscolha.caminhos) {
168
- resultado += this.logicaComumCaminhosEscolha(caminho);
169
- }
170
- if (declaracaoEscolha.caminhoPadrao) {
171
- resultado += ' '.repeat(4);
172
- resultado += 'padrao:\n';
173
- resultado += this.logicaComumCaminhosEscolha(declaracaoEscolha.caminhoPadrao);
174
- }
175
- resultado += '}\n';
176
- return resultado;
177
- }
178
- traduzirDeclaracaoEscreva(declaracaoEscreva) {
179
- let resultado = 'escreva(';
180
- for (const argumento of declaracaoEscreva.argumentos) {
181
- const valor = this.dicionarioConstrutos[argumento.expressao.constructor.name](argumento.expressao);
182
- resultado += valor + ', ';
183
- }
184
- resultado = resultado.slice(0, -2);
185
- resultado += ')';
186
- return resultado;
187
- }
188
- traduzirDeclaracaoExpressao(declaracaoExpressao) {
189
- return this.dicionarioConstrutos[declaracaoExpressao.expressao.constructor.name](declaracaoExpressao.expressao);
190
- }
191
- traduzirDeclaracaoFimPara(declaracaoFimPara) {
192
- return this.dicionarioDeclaracoes[declaracaoFimPara.incremento.constructor.name](declaracaoFimPara.incremento);
193
- }
194
- traduzirDeclaracaoLeia(declaracaoLeia) {
195
- let resultado = '';
196
- for (const parametro of declaracaoLeia.argumentos) {
197
- resultado += `var ${this.dicionarioConstrutos[parametro.constructor.name](parametro)} = leia()\n`;
198
- }
199
- return resultado;
200
- }
201
- traduzirDeclaracaoPara(declaracaoPara) {
202
- let resultado = 'para (';
203
- resultado +=
204
- this.dicionarioConstrutos[declaracaoPara.inicializador.constructor.name](declaracaoPara.inicializador) +
205
- ' ';
206
- resultado += !resultado.includes(';') ? ';' : '';
207
- resultado +=
208
- this.dicionarioConstrutos[declaracaoPara.condicao.constructor.name](declaracaoPara.condicao) + '; ';
209
- resultado +=
210
- this.dicionarioDeclaracoes[declaracaoPara.incrementar.constructor.name](declaracaoPara.incrementar) + ') ';
211
- resultado += this.dicionarioDeclaracoes[declaracaoPara.corpo.constructor.name](declaracaoPara.corpo);
212
- return resultado;
213
- }
214
- traduzirDeclaracaoSe(declaracaoSe) {
215
- let resultado = 'se (';
216
- const condicao = this.dicionarioConstrutos[declaracaoSe.condicao.constructor.name](declaracaoSe.condicao);
217
- resultado += condicao;
218
- resultado += ')';
219
- resultado += this.dicionarioDeclaracoes[declaracaoSe.caminhoEntao.constructor.name](declaracaoSe.caminhoEntao);
220
- if (declaracaoSe.caminhoSenao !== null) {
221
- resultado += ' '.repeat(this.indentacao);
222
- resultado += 'senao ';
223
- resultado += this.dicionarioDeclaracoes[declaracaoSe.caminhoSenao.constructor.name](declaracaoSe.caminhoSenao);
224
- }
225
- return resultado;
226
- }
227
- traduzirDeclaracaoVar(declaracaoVar) {
228
- let resultado = 'var ';
229
- resultado += declaracaoVar.simbolo.lexema;
230
- if (!(declaracaoVar === null || declaracaoVar === void 0 ? void 0 : declaracaoVar.inicializador))
231
- resultado += ';';
232
- else if (Array.isArray(declaracaoVar === null || declaracaoVar === void 0 ? void 0 : declaracaoVar.inicializador.valor))
233
- resultado += ' = []';
234
- else {
235
- resultado += ' = ';
236
- if (this.dicionarioConstrutos[declaracaoVar.inicializador.constructor.name]) {
237
- resultado += this.dicionarioConstrutos[declaracaoVar.inicializador.constructor.name](declaracaoVar.inicializador);
238
- }
239
- else {
240
- resultado += this.dicionarioDeclaracoes[declaracaoVar.inicializador.constructor.name](declaracaoVar.inicializador);
241
- }
242
- resultado += ';';
243
- }
244
- return resultado;
245
- }
246
- traduzirDeclaracaoEscrevaMesmaLinha(declaracaoEscreva) {
247
- return this.traduzirDeclaracaoEscreva(declaracaoEscreva);
248
- }
249
- traduzirConstrutoLogico(logico) {
250
- let direita = this.dicionarioConstrutos[logico.direita.constructor.name](logico.direita);
251
- let operador = this.traduzirSimboloOperador(logico.operador);
252
- let esquerda = this.dicionarioConstrutos[logico.esquerda.constructor.name](logico.esquerda);
253
- return `${direita} ${operador} ${esquerda}`;
254
- }
255
- traduzir(declaracoes) {
256
- let resultado = '';
257
- for (const declaracao of declaracoes) {
258
- resultado += `${this.dicionarioDeclaracoes[declaracao.constructor.name](declaracao)} \n`;
259
- }
260
- return resultado;
261
- }
262
- }
263
- exports.TradutorReversoVisuAlg = TradutorReversoVisuAlg;
264
- //# sourceMappingURL=tradutor-reverso-visualg.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tradutor-reverso-visualg.js","sourceRoot":"","sources":["../../fontes/tradutores/tradutor-reverso-visualg.ts"],"names":[],"mappings":"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"}