@designliquido/delegua 0.13.1 → 0.14.0

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 (58) hide show
  1. package/README.md +3 -54
  2. package/bin/package.json +2 -13
  3. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.d.ts +20 -0
  4. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.js +150 -0
  5. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-guarani.js.map +1 -0
  6. package/fontes/depuracao/index.d.ts +0 -1
  7. package/fontes/depuracao/index.js +0 -1
  8. package/fontes/depuracao/index.js.map +1 -1
  9. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.d.ts +2 -4
  10. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js +34 -43
  11. package/fontes/interpretador/dialetos/egua-classico/interpretador-egua-classico.js.map +1 -1
  12. package/fontes/interpretador/dialetos/visualg/interpretador-visualg.d.ts +2 -2
  13. package/fontes/interpretador/dialetos/visualg/interpretador-visualg.js +1 -1
  14. package/fontes/interpretador/dialetos/visualg/interpretador-visualg.js.map +1 -1
  15. package/fontes/interpretador/index.d.ts +1 -1
  16. package/fontes/interpretador/index.js +1 -1
  17. package/fontes/interpretador/index.js.map +1 -1
  18. package/fontes/interpretador/{interpretador.d.ts → interpretador-base.d.ts} +4 -6
  19. package/fontes/interpretador/{interpretador.js → interpretador-base.js} +8 -63
  20. package/fontes/interpretador/interpretador-base.js.map +1 -0
  21. package/fontes/interpretador/interpretador-com-depuracao.d.ts +2 -2
  22. package/fontes/interpretador/interpretador-com-depuracao.js +2 -2
  23. package/fontes/interpretador/interpretador-com-depuracao.js.map +1 -1
  24. package/fontes/lexador/dialetos/index.d.ts +1 -0
  25. package/fontes/lexador/dialetos/index.js +1 -0
  26. package/fontes/lexador/dialetos/index.js.map +1 -1
  27. package/fontes/lexador/dialetos/lexador-guarani.d.ts +9 -0
  28. package/fontes/lexador/dialetos/lexador-guarani.js +114 -0
  29. package/fontes/lexador/dialetos/lexador-guarani.js.map +1 -0
  30. package/fontes/lexador/dialetos/palavras-reservadas/guarani.d.ts +4 -0
  31. package/fontes/lexador/dialetos/palavras-reservadas/guarani.js +10 -0
  32. package/fontes/lexador/dialetos/palavras-reservadas/guarani.js.map +1 -0
  33. package/fontes/lexador/dialetos/palavras-reservadas/rantiaquin.d.ts +2 -0
  34. package/fontes/lexador/dialetos/palavras-reservadas/rantiaquin.js +4 -0
  35. package/fontes/lexador/dialetos/palavras-reservadas/rantiaquin.js.map +1 -0
  36. package/fontes/tipos-de-simbolos/guarani.d.ts +14 -0
  37. package/fontes/tipos-de-simbolos/guarani.js +16 -0
  38. package/fontes/tipos-de-simbolos/guarani.js.map +1 -0
  39. package/fontes/tipos-de-simbolos/rantiaquin.d.ts +2 -0
  40. package/fontes/tipos-de-simbolos/rantiaquin.js +4 -0
  41. package/fontes/tipos-de-simbolos/rantiaquin.js.map +1 -0
  42. package/index.d.ts +0 -1
  43. package/index.js +0 -1
  44. package/index.js.map +1 -1
  45. package/package.json +2 -13
  46. package/execucao.d.ts +0 -1
  47. package/execucao.js +0 -43
  48. package/execucao.js.map +0 -1
  49. package/fontes/bibliotecas/importar-biblioteca.d.ts +0 -2
  50. package/fontes/bibliotecas/importar-biblioteca.js +0 -132
  51. package/fontes/bibliotecas/importar-biblioteca.js.map +0 -1
  52. package/fontes/delegua.d.ts +0 -86
  53. package/fontes/delegua.js +0 -372
  54. package/fontes/delegua.js.map +0 -1
  55. package/fontes/depuracao/remota/servidor-depuracao.d.ts +0 -41
  56. package/fontes/depuracao/remota/servidor-depuracao.js +0 -301
  57. package/fontes/depuracao/remota/servidor-depuracao.js.map +0 -1
  58. package/fontes/interpretador/interpretador.js.map +0 -1
package/fontes/delegua.js DELETED
@@ -1,372 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.Delegua = void 0;
30
- const fs = __importStar(require("fs"));
31
- const caminho = __importStar(require("path"));
32
- const readline = __importStar(require("readline"));
33
- const chalk_1 = __importDefault(require("chalk"));
34
- const lexador_1 = require("./lexador/lexador");
35
- const avaliador_sintatico_1 = require("./avaliador-sintatico/avaliador-sintatico");
36
- const interpretador_1 = require("./interpretador/interpretador");
37
- const delegua_1 = __importDefault(require("./tipos-de-simbolos/delegua"));
38
- const interpretador_egua_classico_1 = require("./interpretador/dialetos/egua-classico/interpretador-egua-classico");
39
- const lexador_egua_classico_1 = require("./lexador/dialetos/lexador-egua-classico");
40
- const lexador_eguap_1 = require("./lexador/dialetos/lexador-eguap");
41
- const avaliador_sintatico_eguap_1 = require("./avaliador-sintatico/dialetos/avaliador-sintatico-eguap");
42
- const dialetos_1 = require("./avaliador-sintatico/dialetos");
43
- const depuracao_1 = require("./depuracao");
44
- const importador_1 = require("./importador");
45
- const interpretador_com_depuracao_1 = require("./interpretador/interpretador-com-depuracao");
46
- const lexador_visualg_1 = require("./lexador/dialetos/lexador-visualg");
47
- const avaliador_sintatico_visualg_1 = require("./avaliador-sintatico/dialetos/avaliador-sintatico-visualg");
48
- const lexador_birl_1 = require("./lexador/dialetos/lexador-birl");
49
- const avaliador_sintatico_birl_1 = require("./avaliador-sintatico/dialetos/avaliador-sintatico-birl");
50
- const tradutores_1 = require("./tradutores");
51
- const interpretador_visualg_1 = require("./interpretador/dialetos/visualg/interpretador-visualg");
52
- const dialetos_2 = require("./interpretador/dialetos");
53
- const lexador_portugol_studio_1 = require("./lexador/dialetos/lexador-portugol-studio");
54
- const avaliador_sintatico_portugol_studio_1 = require("./avaliador-sintatico/dialetos/avaliador-sintatico-portugol-studio");
55
- /**
56
- * O núcleo da linguagem.
57
- *
58
- * Responsável por avaliar a entrada fornecida, entender o código e executá-lo.
59
- */
60
- class Delegua {
61
- constructor(dialeto = 'delegua', performance = false, depurador = false, traduzir = null, funcaoDeRetorno = null) {
62
- this.dialetos = {
63
- birl: 'BIRL',
64
- delegua: 'padrão',
65
- egua: 'Égua',
66
- eguap: 'ÉguaP',
67
- 'portugol-studio': 'Portugol Studio',
68
- visualg: 'VisuAlg',
69
- };
70
- this.arquivosAbertos = {};
71
- this.conteudoArquivosAbertos = {};
72
- this.dialeto = dialeto;
73
- this.funcaoDeRetorno = funcaoDeRetorno || console.log;
74
- this.modoDepuracao = depurador;
75
- switch (this.dialeto) {
76
- case 'birl':
77
- this.lexador = new lexador_birl_1.LexadorBirl();
78
- this.avaliadorSintatico = new avaliador_sintatico_birl_1.AvaliadorSintaticoBirl();
79
- this.importador = new importador_1.Importador(this.lexador, this.avaliadorSintatico, this.arquivosAbertos, this.conteudoArquivosAbertos, depurador);
80
- this.interpretador = new interpretador_1.Interpretador(this.importador, process.cwd(), false, console.log);
81
- break;
82
- case 'egua':
83
- if (depurador) {
84
- throw new Error('Dialeto ' + this.dialeto + ' não suporta depuração.');
85
- }
86
- this.lexador = new lexador_egua_classico_1.LexadorEguaClassico();
87
- this.avaliadorSintatico = new dialetos_1.AvaliadorSintaticoEguaClassico();
88
- this.importador = new importador_1.Importador(this.lexador, this.avaliadorSintatico, this.arquivosAbertos, this.conteudoArquivosAbertos, depurador);
89
- this.interpretador = new interpretador_egua_classico_1.InterpretadorEguaClassico(this, process.cwd());
90
- break;
91
- case 'eguap':
92
- this.lexador = new lexador_eguap_1.LexadorEguaP();
93
- this.avaliadorSintatico = new avaliador_sintatico_eguap_1.AvaliadorSintaticoEguaP();
94
- this.importador = new importador_1.Importador(this.lexador, this.avaliadorSintatico, this.arquivosAbertos, this.conteudoArquivosAbertos, depurador);
95
- this.interpretador = depurador
96
- ? new interpretador_com_depuracao_1.InterpretadorComDepuracao(this.importador, process.cwd(), funcaoDeRetorno)
97
- : new interpretador_1.Interpretador(this.importador, process.cwd(), performance, funcaoDeRetorno);
98
- break;
99
- case 'portugol-studio':
100
- this.lexador = new lexador_portugol_studio_1.LexadorPortugolStudio();
101
- this.avaliadorSintatico = new avaliador_sintatico_portugol_studio_1.AvaliadorSintaticoPortugolStudio();
102
- this.importador = new importador_1.Importador(this.lexador, this.avaliadorSintatico, this.arquivosAbertos, this.conteudoArquivosAbertos, depurador);
103
- this.interpretador = depurador
104
- ? new interpretador_com_depuracao_1.InterpretadorComDepuracao(this.importador, process.cwd(), funcaoDeRetorno)
105
- : new interpretador_1.Interpretador(this.importador, process.cwd(), performance, funcaoDeRetorno);
106
- break;
107
- case 'visualg':
108
- this.lexador = new lexador_visualg_1.LexadorVisuAlg();
109
- this.avaliadorSintatico = new avaliador_sintatico_visualg_1.AvaliadorSintaticoVisuAlg();
110
- this.importador = new importador_1.Importador(this.lexador, this.avaliadorSintatico, this.arquivosAbertos, this.conteudoArquivosAbertos, depurador);
111
- this.interpretador = depurador
112
- ? new dialetos_2.InterpretadorVisuAlgComDepuracao(this.importador, process.cwd(), funcaoDeRetorno)
113
- : new interpretador_visualg_1.InterpretadorVisuAlg(this.importador, process.cwd(), false, console.log);
114
- break;
115
- default:
116
- this.lexador = new lexador_1.Lexador(performance);
117
- this.avaliadorSintatico = new avaliador_sintatico_1.AvaliadorSintatico(performance);
118
- this.importador = new importador_1.Importador(this.lexador, this.avaliadorSintatico, this.arquivosAbertos, this.conteudoArquivosAbertos, depurador);
119
- this.interpretador = depurador
120
- ? new interpretador_com_depuracao_1.InterpretadorComDepuracao(this.importador, process.cwd(), funcaoDeRetorno)
121
- : new interpretador_1.Interpretador(this.importador, process.cwd(), performance, funcaoDeRetorno);
122
- break;
123
- }
124
- if (traduzir) {
125
- switch (traduzir) {
126
- case 'javascript':
127
- case 'js':
128
- this.tradutorJavaScript = new tradutores_1.TradutorJavaScript();
129
- break;
130
- case 'delegua':
131
- this.tradutorReversoJavascript = new tradutores_1.TradutorReversoJavaScript();
132
- break;
133
- default:
134
- throw new Error(`Tradutor '${traduzir}' não implementado.`);
135
- }
136
- }
137
- if (depurador) {
138
- this.iniciarDepuracao();
139
- }
140
- }
141
- versao() {
142
- try {
143
- const manifesto = caminho.resolve(__dirname, 'package.json');
144
- return JSON.parse(fs.readFileSync(manifesto, { encoding: 'utf8' })).version || '0.12';
145
- }
146
- catch (error) {
147
- return '0.12 (desenvolvimento)';
148
- }
149
- }
150
- /**
151
- * LAIR (Leia-Avalie-Imprima-Repita) é o modo em que Delégua executa em modo console,
152
- * ou seja, esperando como entrada linhas de código fornecidas pelo usuário.
153
- */
154
- iniciarLairDelegua() {
155
- this.funcaoDeRetorno(`Usando dialeto: ${this.dialetos[this.dialeto]}`);
156
- this.funcaoDeRetorno(`Console da Linguagem Delégua v${this.versao()}`);
157
- this.funcaoDeRetorno('Pressione Ctrl + C para sair');
158
- const interfaceLeitura = readline.createInterface({
159
- input: process.stdin,
160
- output: process.stdout,
161
- prompt: '\ndelegua> ',
162
- });
163
- const isto = this;
164
- this.interpretador.interfaceEntradaSaida = interfaceLeitura;
165
- interfaceLeitura.prompt();
166
- interfaceLeitura.on('line', async (linha) => {
167
- const { resultado } = await isto.executarUmaLinha(linha);
168
- if (resultado && resultado.length) {
169
- isto.funcaoDeRetorno(resultado[0]);
170
- }
171
- interfaceLeitura.prompt();
172
- });
173
- }
174
- /**
175
- * Executa uma linha. Usado pelo modo LAIR e pelo servidor de depuração, quando recebe um comando 'avaliar'.
176
- * @param linha A linha a ser avaliada.
177
- * @returns O resultado da execução, com os retornos e respectivos erros, se houverem.
178
- */
179
- async executarUmaLinha(linha) {
180
- const retornoLexador = this.lexador.mapear([linha], -1);
181
- const retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador);
182
- if (this.afericaoErros({
183
- retornoLexador,
184
- retornoAvaliadorSintatico,
185
- })) {
186
- return { resultado: [] };
187
- }
188
- return await this.executar({
189
- retornoLexador,
190
- retornoAvaliadorSintatico,
191
- }, true);
192
- }
193
- /**
194
- * Instancia um servidor de depuração, normalmente recebendo requisições na porta 7777.
195
- */
196
- iniciarDepuracao() {
197
- this.servidorDepuracao = new depuracao_1.ServidorDepuracao(this);
198
- this.servidorDepuracao.iniciarServidorDepuracao();
199
- this.interpretador.finalizacaoDaExecucao = this.finalizarDepuracao.bind(this);
200
- }
201
- /**
202
- * Pede ao servidor de depuração que finalize a execução.
203
- * Se não for feito, o servidor de depuração mantém um _stream_ aberto e nunca finaliza.
204
- * Mais informações: https://stackoverflow.com/a/47456805/1314276
205
- */
206
- finalizarDepuracao() {
207
- if (this.servidorDepuracao) {
208
- this.servidorDepuracao.finalizarServidorDepuracao();
209
- }
210
- }
211
- /**
212
- * Verifica erros nas etapas de lexação e avaliação sintática.
213
- * @param retornoImportador Um objeto que implementa a interface RetornoImportador.
214
- * @returns Verdadeiro se há erros. Falso caso contrário.
215
- */
216
- afericaoErros(retornoImportador) {
217
- if (retornoImportador.retornoLexador.erros.length > 0) {
218
- for (const erroLexador of retornoImportador.retornoLexador.erros) {
219
- this.reportar(erroLexador.linha, ` no '${erroLexador.caractere}'`, erroLexador.mensagem);
220
- }
221
- return true;
222
- }
223
- if (retornoImportador.retornoAvaliadorSintatico.erros.length > 0) {
224
- for (const erroAvaliadorSintatico of retornoImportador.retornoAvaliadorSintatico.erros) {
225
- this.erro(erroAvaliadorSintatico.simbolo, erroAvaliadorSintatico.message);
226
- }
227
- return true;
228
- }
229
- return false;
230
- }
231
- /**
232
- * Realiza a tradução do arquivo passado como parâmetro no comando de execução.
233
- * @param caminhoRelativoArquivo O caminho do arquivo.
234
- * @param gerarArquivoSaida Se o resultado da tradução deve ser escrito em arquivo.
235
- * Se verdadeiro, os arquivos de saída são escritos no mesmo diretório
236
- * do arquivo passado no primeiro parâmetro.
237
- */
238
- traduzirArquivo(caminhoRelativoArquivo, gerarArquivoSaida, extensaoArquivoSaida) {
239
- const caminhoAbsolutoPrimeiroArquivo = caminho.resolve(caminhoRelativoArquivo);
240
- const novoDiretorioBase = caminho.dirname(caminhoAbsolutoPrimeiroArquivo);
241
- this.importador.diretorioBase = novoDiretorioBase;
242
- const retornoImportador = this.importador.importar(caminhoRelativoArquivo, true, !!this.tradutorReversoJavascript);
243
- let resultado = null;
244
- if (this.tradutorJavaScript !== null && this.tradutorJavaScript !== undefined) {
245
- if (this.afericaoErros(retornoImportador)) {
246
- process.exit(65); // Código para erro de avaliação antes da tradução
247
- }
248
- resultado = this.tradutorJavaScript.traduzir(retornoImportador.retornoAvaliadorSintatico.declaracoes);
249
- }
250
- else {
251
- resultado = this.tradutorReversoJavascript.traduzir(retornoImportador.conteudoArquivo.join('\n'));
252
- }
253
- if (gerarArquivoSaida) {
254
- ['.delegua', '.js'].map((extensao) => {
255
- if (caminhoAbsolutoPrimeiroArquivo.includes(extensao)) {
256
- fs.writeFile(caminhoAbsolutoPrimeiroArquivo.replace(extensao, `.${extensaoArquivoSaida}`), resultado, (erro) => {
257
- if (erro)
258
- throw erro;
259
- });
260
- }
261
- });
262
- }
263
- this.funcaoDeRetorno(resultado);
264
- }
265
- async executarCodigoComoArgumento(codigo) {
266
- const retornoLexador = this.lexador.mapear([codigo], -1);
267
- const retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador, -1);
268
- const { erros } = await this.executar({
269
- conteudoArquivo: [codigo],
270
- nomeArquivo: '',
271
- hashArquivo: -1,
272
- retornoLexador: retornoLexador,
273
- retornoAvaliadorSintatico: retornoAvaliadorSintatico,
274
- });
275
- if (erros.length > 0)
276
- process.exit(70); // Código com exceções não tratadas
277
- }
278
- /**
279
- * Execução por arquivo.
280
- * @param caminhoRelativoArquivo O caminho no sistema operacional do arquivo a ser aberto.
281
- */
282
- async carregarArquivo(caminhoRelativoArquivo) {
283
- const caminhoAbsolutoPrimeiroArquivo = caminho.resolve(caminhoRelativoArquivo);
284
- const novoDiretorioBase = caminho.dirname(caminhoAbsolutoPrimeiroArquivo);
285
- this.importador.diretorioBase = novoDiretorioBase;
286
- this.interpretador.diretorioBase = novoDiretorioBase;
287
- const retornoImportador = this.importador.importar(caminhoRelativoArquivo, true, false);
288
- if (this.afericaoErros(retornoImportador)) {
289
- process.exit(65); // Código para erro de avaliação antes da execução
290
- }
291
- let errosExecucao = {
292
- lexador: [],
293
- avaliadorSintatico: [],
294
- interpretador: [],
295
- };
296
- const interfaceLeitura = readline.createInterface({
297
- input: process.stdin,
298
- output: process.stdout,
299
- prompt: '\n> ',
300
- });
301
- this.interpretador.interfaceEntradaSaida = interfaceLeitura;
302
- if (this.modoDepuracao) {
303
- try {
304
- this.interpretador.prepararParaDepuracao(retornoImportador.retornoAvaliadorSintatico.declaracoes);
305
- }
306
- catch (erro) {
307
- console.error(chalk_1.default.red(`[Erro de execução]`) + ` Dialeto ${this.dialeto} não suporta depuração.`);
308
- }
309
- }
310
- else {
311
- const { erros } = await this.executar(retornoImportador);
312
- errosExecucao = erros;
313
- }
314
- interfaceLeitura.close();
315
- if (errosExecucao.length > 0)
316
- process.exit(70); // Código com exceções não tratadas
317
- }
318
- /**
319
- * A execução do código de fato.
320
- * @param retornoImportador Dados retornados do Importador, como o retorno do Lexador, do Avaliador
321
- * Sintático e respectivos erros.
322
- * @param manterAmbiente Indicação se ambiente deve ser mantido ou não. Normalmente verdadeiro
323
- * para LAIR, falso para execução por arquivo.
324
- * @returns Um objeto com o resultado da execução.
325
- */
326
- async executar(retornoImportador, manterAmbiente = false) {
327
- var _a, _b;
328
- const retornoInterpretador = await this.interpretador.interpretar(retornoImportador.retornoAvaliadorSintatico.declaracoes, manterAmbiente);
329
- if (retornoInterpretador.erros.length > 0) {
330
- for (const erroInterpretador of retornoInterpretador.erros) {
331
- if (erroInterpretador.simbolo) {
332
- this.erroEmTempoDeExecucao(erroInterpretador);
333
- }
334
- else {
335
- const erroEmJavaScript = erroInterpretador;
336
- console.error(chalk_1.default.red(`[Linha: ${erroEmJavaScript.linha}] Erro em JavaScript: `) +
337
- `${(_a = erroEmJavaScript.erroInterno) === null || _a === void 0 ? void 0 : _a.message}`);
338
- console.error(chalk_1.default.red(`Pilha de execução: `) + `${(_b = erroEmJavaScript.erroInterno) === null || _b === void 0 ? void 0 : _b.stack}`);
339
- }
340
- }
341
- }
342
- return {
343
- erros: retornoInterpretador.erros,
344
- resultado: retornoInterpretador.resultado,
345
- };
346
- }
347
- reportar(linha, onde, mensagem) {
348
- /* if (this.nomeArquivo)
349
- console.error(
350
- chalk.red(`[Arquivo: ${this.nomeArquivo}] [Linha: ${linha}]`) + ` Erro${onde}: ${mensagem}`
351
- );
352
- else */
353
- console.error(chalk_1.default.red(`[Linha: ${linha}]`) + ` Erro${onde}: ${mensagem}`);
354
- }
355
- erro(simbolo, mensagemDeErro) {
356
- const _simbolo = simbolo || { tipo: delegua_1.default.EOF, linha: -1, lexema: '(indefinido)' };
357
- if (_simbolo.tipo === delegua_1.default.EOF) {
358
- this.reportar(Number(_simbolo.linha), ' no final do código', mensagemDeErro);
359
- }
360
- else {
361
- this.reportar(Number(_simbolo.linha), ` no '${_simbolo.lexema}'`, mensagemDeErro);
362
- }
363
- }
364
- erroEmTempoDeExecucao(erro) {
365
- var _a;
366
- const linha = ((_a = erro === null || erro === void 0 ? void 0 : erro.simbolo) === null || _a === void 0 ? void 0 : _a.linha) || (erro === null || erro === void 0 ? void 0 : erro.linha);
367
- const mensagem = (erro === null || erro === void 0 ? void 0 : erro.mensagem) || (erro === null || erro === void 0 ? void 0 : erro.message);
368
- console.error(chalk_1.default.red(`Erro: [Linha: ${linha}]`) + ` ${mensagem}`);
369
- }
370
- }
371
- exports.Delegua = Delegua;
372
- //# sourceMappingURL=delegua.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"delegua.js","sourceRoot":"","sources":["../../fontes/delegua.ts"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- /// <reference types="node" />
2
- import * as net from 'net';
3
- import { DeleguaInterface, InterpretadorComDepuracaoInterface } from '../../interfaces';
4
- /**
5
- * Esta foi a primeira implementacão do mecanismo de depuração, usando comunicação por _sockets_.
6
- * Inicialmente uma integração foi implementada na extensão do VSCode, mas o protocolo de
7
- * comunicação nunca foi exatamente maturado, em favor de uma implementação na extensão
8
- * usando a linguagem diretamente.
9
- *
10
- * Mecanismo poderá ser maturado num futuro próximo. Para mais detalhes, ler `README.md`.
11
- */
12
- export declare class ServidorDepuracao {
13
- instanciaDelegua: DeleguaInterface;
14
- servidor: net.Server;
15
- conexoes: {
16
- [chave: number]: any;
17
- };
18
- contadorConexoes: number;
19
- interpretador: InterpretadorComDepuracaoInterface;
20
- constructor(_instanciaDelegua: DeleguaInterface);
21
- validarPontoParada: (caminhoArquivo: string, linha: number, conexao: net.Socket) => any;
22
- comandoAdentrarEscopo: (conexao: net.Socket) => Promise<any>;
23
- comandoAdicionarPontoParada: (comando: string[], conexao: net.Socket) => any;
24
- comandoAvaliar: (comando: string[], conexao: net.Socket) => Promise<any>;
25
- comandoAvaliarVariavel: (comando: string[], conexao: net.Socket) => Promise<any>;
26
- comandoContinuar: (conexao: net.Socket) => Promise<any>;
27
- comandoPilhaExecucao: (conexao: net.Socket) => any;
28
- comandoPontosParada: (conexao: net.Socket) => any;
29
- comandoProximo: (conexao: net.Socket) => Promise<any>;
30
- comandoRemoverPontoParada: (comando: string[], conexao: net.Socket) => any;
31
- comandoSairEscopo: (conexao: net.Socket) => Promise<any>;
32
- comandoVariaveis: (conexao: net.Socket) => any;
33
- /**
34
- * Função que descreve como conexão com clientes de depuração deve ser operada.
35
- * @param conexao Instância de conexão, tipo net.Socket.
36
- */
37
- operarConexao: (conexao: net.Socket) => void;
38
- iniciarServidorDepuracao(): net.AddressInfo;
39
- escreverSaidaParaTodosClientes(mensagem: string): void;
40
- finalizarServidorDepuracao(): void;
41
- }