@designliquido/delegua 0.2.2 → 0.2.5

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 (105) hide show
  1. package/bin/package.json +3 -3
  2. package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +67 -0
  3. package/fontes/avaliador-sintatico/avaliador-sintatico.js +663 -0
  4. package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -0
  5. package/fontes/avaliador-sintatico/dialetos/{egua-classico.d.ts → avaliador-sintatico-egua-classico.d.ts} +2 -1
  6. package/fontes/avaliador-sintatico/dialetos/{egua-classico.js → avaliador-sintatico-egua-classico.js} +153 -155
  7. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -0
  8. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.d.ts +80 -0
  9. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +708 -0
  10. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -0
  11. package/fontes/avaliador-sintatico/dialetos/index.d.ts +1 -1
  12. package/fontes/avaliador-sintatico/dialetos/index.js +1 -1
  13. package/fontes/avaliador-sintatico/dialetos/index.js.map +1 -1
  14. package/fontes/avaliador-sintatico/index.d.ts +2 -66
  15. package/fontes/avaliador-sintatico/index.js +15 -661
  16. package/fontes/avaliador-sintatico/index.js.map +1 -1
  17. package/fontes/delegua.d.ts +6 -3
  18. package/fontes/delegua.js +35 -21
  19. package/fontes/delegua.js.map +1 -1
  20. package/fontes/interfaces/avaliador-sintatico-interface.d.ts +4 -3
  21. package/fontes/interfaces/delegua-interface.d.ts +3 -0
  22. package/fontes/interfaces/delegua-interface.js +3 -0
  23. package/fontes/interfaces/delegua-interface.js.map +1 -0
  24. package/fontes/interfaces/index.d.ts +7 -6
  25. package/fontes/interfaces/index.js +1 -0
  26. package/fontes/interfaces/index.js.map +1 -1
  27. package/fontes/interfaces/interpretador-interface.d.ts +4 -5
  28. package/fontes/interfaces/lexador-interface.d.ts +1 -1
  29. package/fontes/interfaces/pilha-interface.d.ts +6 -6
  30. package/fontes/interfaces/resolvedor-interface.d.ts +2 -2
  31. package/fontes/interpretador/dialetos/egua-classico.d.ts +6 -4
  32. package/fontes/interpretador/dialetos/egua-classico.js +34 -31
  33. package/fontes/interpretador/dialetos/egua-classico.js.map +1 -1
  34. package/fontes/interpretador/erro-interpretador.d.ts +5 -0
  35. package/fontes/interpretador/erro-interpretador.js +3 -0
  36. package/fontes/interpretador/erro-interpretador.js.map +1 -0
  37. package/fontes/interpretador/index.d.ts +6 -3
  38. package/fontes/interpretador/index.js +32 -26
  39. package/fontes/interpretador/index.js.map +1 -1
  40. package/fontes/interpretador/retorno-interpretador.d.ts +4 -0
  41. package/fontes/interpretador/retorno-interpretador.js +3 -0
  42. package/fontes/interpretador/retorno-interpretador.js.map +1 -0
  43. package/fontes/lexador/dialetos/index.d.ts +1 -1
  44. package/fontes/lexador/dialetos/index.js +1 -1
  45. package/fontes/lexador/dialetos/index.js.map +1 -1
  46. package/fontes/lexador/dialetos/{egua-classico.d.ts → lexador-egua-classico.d.ts} +2 -2
  47. package/fontes/lexador/dialetos/{egua-classico.js → lexador-egua-classico.js} +41 -82
  48. package/fontes/lexador/dialetos/lexador-egua-classico.js.map +1 -0
  49. package/fontes/lexador/dialetos/lexador-eguap.d.ts +51 -0
  50. package/fontes/lexador/dialetos/lexador-eguap.js +395 -0
  51. package/fontes/lexador/dialetos/lexador-eguap.js.map +1 -0
  52. package/fontes/lexador/dialetos/pragma.d.ts +8 -0
  53. package/fontes/lexador/dialetos/pragma.js +3 -0
  54. package/fontes/lexador/dialetos/pragma.js.map +1 -0
  55. package/fontes/{tiposDeSimbolos.d.ts → lexador/dialetos/tipos-de-simbolos-eguap.d.ts} +2 -1
  56. package/fontes/lexador/dialetos/tipos-de-simbolos-eguap.js +74 -0
  57. package/fontes/lexador/dialetos/tipos-de-simbolos-eguap.js.map +1 -0
  58. package/fontes/lexador/index.d.ts +2 -43
  59. package/fontes/lexador/index.js +15 -412
  60. package/fontes/lexador/index.js.map +1 -1
  61. package/fontes/lexador/lexador.d.ts +43 -0
  62. package/fontes/lexador/lexador.js +372 -0
  63. package/fontes/lexador/lexador.js.map +1 -0
  64. package/fontes/lexador/palavras-reservadas.d.ts +35 -0
  65. package/fontes/lexador/palavras-reservadas.js +41 -0
  66. package/fontes/lexador/palavras-reservadas.js.map +1 -0
  67. package/fontes/lexador/retorno-lexador.d.ts +4 -0
  68. package/fontes/lexador/simbolo.d.ts +9 -0
  69. package/fontes/lexador/simbolo.js +17 -0
  70. package/fontes/lexador/simbolo.js.map +1 -0
  71. package/fontes/lexador/tipos-de-simbolos.d.ts +72 -0
  72. package/fontes/{tiposDeSimbolos.js → lexador/tipos-de-simbolos.js} +2 -1
  73. package/fontes/lexador/tipos-de-simbolos.js.map +1 -0
  74. package/fontes/resolvedor/dialetos/egua-classico.d.ts +3 -3
  75. package/fontes/resolvedor/dialetos/egua-classico.js +5 -4
  76. package/fontes/resolvedor/dialetos/egua-classico.js.map +1 -1
  77. package/fontes/resolvedor/index.d.ts +3 -3
  78. package/fontes/resolvedor/index.js +5 -4
  79. package/fontes/resolvedor/index.js.map +1 -1
  80. package/fontes/resolvedor/pilha-escopos.d.ts +1 -1
  81. package/fontes/resolvedor/retorno-resolvedor.d.ts +2 -0
  82. package/fontes/tipos-de-simbolos.d.ts +72 -0
  83. package/fontes/tipos-de-simbolos.js +74 -0
  84. package/fontes/tipos-de-simbolos.js.map +1 -0
  85. package/package.json +3 -3
  86. package/testes/avaliador-sintatico.test.js +2 -2
  87. package/testes/avaliador-sintatico.test.js.map +1 -1
  88. package/testes/biblioteca-global.test.js +57 -57
  89. package/testes/biblioteca-global.test.js.map +1 -1
  90. package/testes/egua-classico/avaliador-sintatico.test.js +7 -16
  91. package/testes/egua-classico/avaliador-sintatico.test.js.map +1 -1
  92. package/testes/egua-classico/interpretador.test.js +81 -81
  93. package/testes/egua-classico/interpretador.test.js.map +1 -1
  94. package/testes/egua-classico/resolvedor.test.js +4 -4
  95. package/testes/egua-classico/resolvedor.test.js.map +1 -1
  96. package/testes/eguap/lexador.test.d.ts +1 -0
  97. package/testes/eguap/lexador.test.js +53 -0
  98. package/testes/eguap/lexador.test.js.map +1 -0
  99. package/testes/interpretador.test.js +81 -81
  100. package/testes/interpretador.test.js.map +1 -1
  101. package/testes/resolvedor.test.js +1 -1
  102. package/testes/resolvedor.test.js.map +1 -1
  103. package/fontes/avaliador-sintatico/dialetos/egua-classico.js.map +0 -1
  104. package/fontes/lexador/dialetos/egua-classico.js.map +0 -1
  105. package/fontes/tiposDeSimbolos.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/avaliador-sintatico/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/avaliador-sintatico/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,6DAA2C"}
@@ -1,10 +1,13 @@
1
- import { AvaliadorSintaticoInterface, InterpretadorInterface, LexadorInterface, SimboloInterface } from './interfaces';
1
+ import { AvaliadorSintaticoInterface, DeleguaInterface, InterpretadorInterface, LexadorInterface, SimboloInterface } from './interfaces';
2
2
  import { ResolvedorInterface } from './interfaces/resolvedor-interface';
3
- export declare class Delegua {
3
+ export declare class Delegua implements DeleguaInterface {
4
4
  nomeArquivo: string;
5
5
  teveErro: boolean;
6
6
  teveErroEmTempoDeExecucao: boolean;
7
7
  dialeto: string;
8
+ arquivosAbertos: {
9
+ [identificador: string]: string;
10
+ };
8
11
  interpretador: InterpretadorInterface;
9
12
  lexador: LexadorInterface;
10
13
  avaliadorSintatico: AvaliadorSintaticoInterface;
@@ -12,7 +15,7 @@ export declare class Delegua {
12
15
  constructor(dialeto?: string, performance?: boolean, nomeArquivo?: string);
13
16
  versao(): string;
14
17
  iniciarDelegua(): void;
15
- carregarArquivo(nomeArquivo: string): void;
18
+ carregarArquivo(caminhoRelativoArquivo: string): void;
16
19
  executar(codigo: string[], nomeArquivo?: string): void;
17
20
  reportar(linha: number, onde: any, mensagem: string): void;
18
21
  erro(simbolo: SimboloInterface, mensagemDeErro: string): void;
package/fontes/delegua.js CHANGED
@@ -31,16 +31,18 @@ var fs = __importStar(require("fs"));
31
31
  var caminho = __importStar(require("path"));
32
32
  var readline = __importStar(require("readline"));
33
33
  var chalk_1 = __importDefault(require("chalk"));
34
- var lexador_1 = require("./lexador");
35
- var avaliador_sintatico_1 = require("./avaliador-sintatico");
34
+ var lexador_1 = require("./lexador/lexador");
35
+ var avaliador_sintatico_1 = require("./avaliador-sintatico/avaliador-sintatico");
36
36
  var resolvedor_1 = require("./resolvedor");
37
37
  var interpretador_1 = require("./interpretador");
38
- var tiposDeSimbolos_1 = __importDefault(require("./tiposDeSimbolos"));
38
+ var tipos_de_simbolos_1 = __importDefault(require("./lexador/tipos-de-simbolos"));
39
39
  var excecoes_1 = require("./excecoes");
40
40
  var egua_classico_1 = require("./interpretador/dialetos/egua-classico");
41
+ var lexador_egua_classico_1 = require("./lexador/dialetos/lexador-egua-classico");
42
+ var lexador_eguap_1 = require("./lexador/dialetos/lexador-eguap");
43
+ var avaliador_sintatico_eguap_1 = require("./avaliador-sintatico/dialetos/avaliador-sintatico-eguap");
41
44
  var egua_classico_2 = require("./resolvedor/dialetos/egua-classico");
42
- var egua_classico_3 = require("./avaliador-sintatico/dialetos/egua-classico");
43
- var egua_classico_4 = require("./lexador/dialetos/egua-classico");
45
+ var dialetos_1 = require("./avaliador-sintatico/dialetos");
44
46
  var Delegua = /** @class */ (function () {
45
47
  function Delegua(dialeto, performance, nomeArquivo) {
46
48
  if (dialeto === void 0) { dialeto = 'delegua'; }
@@ -52,23 +54,23 @@ var Delegua = /** @class */ (function () {
52
54
  switch (this.dialeto) {
53
55
  case 'egua':
54
56
  this.interpretador = new egua_classico_1.InterpretadorEguaClassico(this, process.cwd());
55
- this.lexador = new egua_classico_4.LexadorEguaClassico();
56
- this.avaliadorSintatico = new egua_classico_3.AvaliadorSintaticoEguaClassico();
57
- this.resolvedor = new egua_classico_2.ResolvedorEguaClassico(this.interpretador);
57
+ this.lexador = new lexador_egua_classico_1.LexadorEguaClassico();
58
+ this.avaliadorSintatico = new dialetos_1.AvaliadorSintaticoEguaClassico();
59
+ this.resolvedor = new egua_classico_2.ResolvedorEguaClassico();
58
60
  console.log('Usando dialeto: Égua');
59
61
  break;
60
62
  case 'eguap':
61
63
  this.interpretador = new interpretador_1.Interpretador(this, process.cwd());
62
- this.lexador = new lexador_1.Lexador();
63
- this.avaliadorSintatico = new avaliador_sintatico_1.AvaliadorSintatico(performance);
64
- this.resolvedor = new resolvedor_1.Resolvedor(this.interpretador);
64
+ this.lexador = new lexador_eguap_1.LexadorEguaP();
65
+ this.avaliadorSintatico = new avaliador_sintatico_eguap_1.AvaliadorSintaticoEguaP();
66
+ this.resolvedor = new resolvedor_1.Resolvedor();
65
67
  console.log('Usando dialeto: ÉguaP');
66
68
  break;
67
69
  default:
68
70
  this.interpretador = new interpretador_1.Interpretador(this, process.cwd(), performance);
69
71
  this.lexador = new lexador_1.Lexador(performance);
70
72
  this.avaliadorSintatico = new avaliador_sintatico_1.AvaliadorSintatico(performance);
71
- this.resolvedor = new resolvedor_1.Resolvedor(this.interpretador);
73
+ this.resolvedor = new resolvedor_1.Resolvedor();
72
74
  console.log('Usando dialeto: padrão');
73
75
  break;
74
76
  }
@@ -100,9 +102,9 @@ var Delegua = /** @class */ (function () {
100
102
  leiaLinha.prompt();
101
103
  });
102
104
  };
103
- Delegua.prototype.carregarArquivo = function (nomeArquivo) {
104
- this.nomeArquivo = caminho.basename(nomeArquivo);
105
- var dadosDoArquivo = fs.readFileSync(nomeArquivo);
105
+ Delegua.prototype.carregarArquivo = function (caminhoRelativoArquivo) {
106
+ this.nomeArquivo = caminho.basename(caminhoRelativoArquivo);
107
+ var dadosDoArquivo = fs.readFileSync(caminhoRelativoArquivo);
106
108
  var conteudoDoArquivo = dadosDoArquivo
107
109
  .toString()
108
110
  .split('\n');
@@ -122,7 +124,7 @@ var Delegua = /** @class */ (function () {
122
124
  }
123
125
  return;
124
126
  }
125
- var retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador.simbolos);
127
+ var retornoAvaliadorSintatico = this.avaliadorSintatico.analisar(retornoLexador);
126
128
  if (retornoAvaliadorSintatico.erros.length > 0) {
127
129
  for (var _b = 0, _c = retornoAvaliadorSintatico.erros; _b < _c.length; _b++) {
128
130
  var erroAvaliadorSintatico = _c[_b];
@@ -138,7 +140,20 @@ var Delegua = /** @class */ (function () {
138
140
  }
139
141
  return;
140
142
  }
141
- this.interpretador.interpretar(retornoAvaliadorSintatico);
143
+ var retornoInterpretador = this.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes, retornoResolvedor.locais);
144
+ if (retornoInterpretador.erros.length > 0) {
145
+ for (var _f = 0, _g = retornoInterpretador.erros; _f < _g.length; _f++) {
146
+ var erroInterpretador = _g[_f];
147
+ if (erroInterpretador.simbolo) {
148
+ this.erroEmTempoDeExecucao(erroInterpretador.simbolo);
149
+ }
150
+ else {
151
+ var erroEmJavaScript = erroInterpretador;
152
+ console.error(chalk_1.default.red("Erro em JavaScript: ") + "".concat(erroEmJavaScript.message));
153
+ console.error(chalk_1.default.red("Pilha de execu\u00E7\u00E3o: ") + "".concat(erroEmJavaScript.stack));
154
+ }
155
+ }
156
+ }
142
157
  };
143
158
  Delegua.prototype.reportar = function (linha, onde, mensagem) {
144
159
  if (this.nomeArquivo)
@@ -148,7 +163,7 @@ var Delegua = /** @class */ (function () {
148
163
  this.teveErro = true;
149
164
  };
150
165
  Delegua.prototype.erro = function (simbolo, mensagemDeErro) {
151
- if (simbolo.tipo === tiposDeSimbolos_1.default.EOF) {
166
+ if (simbolo.tipo === tipos_de_simbolos_1.default.EOF) {
152
167
  this.reportar(Number(simbolo.linha), ' no final', mensagemDeErro);
153
168
  }
154
169
  else {
@@ -156,14 +171,13 @@ var Delegua = /** @class */ (function () {
156
171
  }
157
172
  };
158
173
  Delegua.prototype.erroEmTempoDeExecucao = function (erro) {
159
- if (erro & erro.simbolo && erro.simbolo.linha) {
174
+ if (erro && erro.simbolo && erro.simbolo.linha) {
160
175
  if (this.nomeArquivo)
161
176
  console.error(chalk_1.default.red("Erro: [Arquivo: ".concat(this.nomeArquivo, "] [Linha: ").concat(erro.simbolo.linha, "]")) + " ".concat(erro.mensagem));
162
177
  else
163
178
  console.error(chalk_1.default.red("Erro: [Linha: ".concat(erro.simbolo.linha, "]")) + " ".concat(erro.mensagem));
164
179
  }
165
- else if (!(erro instanceof excecoes_1.ExcecaoRetornar)) {
166
- // TODO: Ao se livrar de ReturnException, remover isto.
180
+ else if (!(erro instanceof excecoes_1.ExcecaoRetornar)) { // TODO: Se livrar de ExcecaoRetornar.
167
181
  console.error(chalk_1.default.red("Erro: [Linha: ".concat(erro.linha || 0, "]")) + " ".concat(erro.mensagem));
168
182
  }
169
183
  this.teveErroEmTempoDeExecucao = true;
@@ -1 +1 @@
1
- {"version":3,"file":"delegua.js","sourceRoot":"","sources":["../../fontes/delegua.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delegua.js","sourceRoot":"","sources":["../../fontes/delegua.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { ErroAvaliadorSintatico } from '../avaliador-sintatico/erro-avaliador-si
2
2
  import { RetornoAvaliadorSintatico } from '../avaliador-sintatico/retorno-avaliador-sintatico';
3
3
  import { Construto, Funcao } from '../construtos';
4
4
  import { Classe, Continua, Enquanto, Escolha, Escreva, Fazer, Funcao as FuncaoDeclaracao, Importar, Para, Retorna, Se, Sustar, Tente, Var } from '../declaracoes';
5
+ import { RetornoLexador } from '../lexador/retorno-lexador';
5
6
  import { SimboloInterface } from './simbolo-interface';
6
7
  export interface AvaliadorSintaticoInterface {
7
8
  simbolos: SimboloInterface[];
@@ -9,8 +10,8 @@ export interface AvaliadorSintaticoInterface {
9
10
  atual: number;
10
11
  ciclos: number;
11
12
  sincronizar(): void;
13
+ consumir(tipo: any, mensagemDeErro: string): any;
12
14
  erro(simbolo: SimboloInterface, mensagemDeErro: string): ErroAvaliadorSintatico;
13
- consumir(tipo: any, mensagemDeErro: any): any;
14
15
  verificarTipoSimboloAtual(tipo: any): boolean;
15
16
  verificarTipoProximoSimbolo(tipo: any): boolean;
16
17
  simboloAtual(): SimboloInterface;
@@ -21,7 +22,7 @@ export interface AvaliadorSintaticoInterface {
21
22
  verificarSeSimboloAtualEIgualA(...argumentos: any[]): boolean;
22
23
  primario(): any;
23
24
  finalizarChamada(entidadeChamada: Construto): Construto;
24
- chamar(): Construto;
25
+ chamar(): any;
25
26
  unario(): Construto;
26
27
  exponenciacao(): Construto;
27
28
  multiplicar(): Construto;
@@ -55,5 +56,5 @@ export interface AvaliadorSintaticoInterface {
55
56
  corpoDaFuncao(tipo: any): Funcao;
56
57
  declaracaoDeClasse(): Classe;
57
58
  declaracao(): any;
58
- analisar(simbolos?: SimboloInterface[]): RetornoAvaliadorSintatico;
59
+ analisar(retornoLexador: RetornoLexador): RetornoAvaliadorSintatico;
59
60
  }
@@ -0,0 +1,3 @@
1
+ export interface DeleguaInterface {
2
+ executar(codigo: string[], nomeArquivo: string): void;
3
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=delegua-interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delegua-interface.js","sourceRoot":"","sources":["../../../fontes/interfaces/delegua-interface.ts"],"names":[],"mappings":""}
@@ -1,6 +1,7 @@
1
- export * from "./avaliador-sintatico-interface";
2
- export * from "./interpretador-interface";
3
- export * from "./lexador-interface";
4
- export * from "./pilha-interface";
5
- export * from "./resolvedor-interface";
6
- export * from "./simbolo-interface";
1
+ export * from './avaliador-sintatico-interface';
2
+ export * from './delegua-interface';
3
+ export * from './interpretador-interface';
4
+ export * from './lexador-interface';
5
+ export * from './pilha-interface';
6
+ export * from './resolvedor-interface';
7
+ export * from './simbolo-interface';
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./avaliador-sintatico-interface"), exports);
18
+ __exportStar(require("./delegua-interface"), exports);
18
19
  __exportStar(require("./interpretador-interface"), exports);
19
20
  __exportStar(require("./lexador-interface"), exports);
20
21
  __exportStar(require("./pilha-interface"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kEAAgD;AAChD,4DAA0C;AAC1C,sDAAoC;AACpC,oDAAiC;AACjC,yDAAuC;AACvC,sDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../fontes/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kEAAgD;AAChD,sDAAoC;AACpC,4DAA0C;AAC1C,sDAAoC;AACpC,oDAAkC;AAClC,yDAAuC;AACvC,sDAAoC"}
@@ -1,12 +1,11 @@
1
1
  import { Ambiente } from "../ambiente";
2
- import { Delegua } from "../delegua";
2
+ import { Construto } from "../construtos";
3
+ import { RetornoInterpretador } from "../interpretador/retorno-interpretador";
3
4
  export interface InterpretadorInterface {
4
- Delegua: Delegua;
5
5
  diretorioBase: any;
6
6
  global: Ambiente;
7
7
  ambiente: Ambiente;
8
- locais: any;
9
- resolver(expressao: any, profundidade: number): void;
8
+ locais: Map<Construto, number>;
10
9
  visitarExpressaoLiteral(expressao: any): any;
11
10
  avaliar(expressao: any): any;
12
11
  visitarExpressaoAgrupamento(expressao: any): any;
@@ -49,5 +48,5 @@ export interface InterpretadorInterface {
49
48
  visitarExpressaoSuper(expressao: any): any;
50
49
  paraTexto(objeto: any): any;
51
50
  executar(declaracao: any, mostrarResultado: boolean): void;
52
- interpretar(declaracoes: any): void;
51
+ interpretar(declaracoes: any, locais: Map<Construto, number>): RetornoInterpretador;
53
52
  }
@@ -16,7 +16,7 @@ export interface LexadorInterface {
16
16
  simboloAtual(): string;
17
17
  proximoSimbolo(): string;
18
18
  simboloAnterior(): string;
19
- analisarTexto(texto: string): void;
19
+ analisarTexto(delimitador: string): void;
20
20
  analisarNumero(): void;
21
21
  identificarPalavraChave(): void;
22
22
  analisarToken(): void;
@@ -1,7 +1,7 @@
1
- export interface PilhaInterface {
2
- pilha: Array<any>;
3
- empilhar(item: any): any;
4
- eVazio(item: any): Boolean;
5
- topoDaPilha(): Array<any>;
6
- removerUltimo(): Array<any>;
1
+ export interface PilhaInterface<T> {
2
+ pilha: Array<T>;
3
+ empilhar(item: T): any;
4
+ eVazio(item: T): Boolean;
5
+ topoDaPilha(): Array<T>;
6
+ removerUltimo(): Array<T>;
7
7
  }
@@ -1,12 +1,12 @@
1
+ import { Construto } from "../construtos";
1
2
  import { ErroResolvedor } from "../resolvedor/erro-resolvedor";
2
3
  import { PilhaEscopos } from "../resolvedor/pilha-escopos";
3
4
  import { RetornoResolvedor } from "../resolvedor/retorno-resolvedor";
4
- import { InterpretadorInterface } from "./interpretador-interface";
5
5
  import { SimboloInterface } from "./simbolo-interface";
6
6
  export interface ResolvedorInterface {
7
- interpretador: InterpretadorInterface;
8
7
  erros: ErroResolvedor[];
9
8
  escopos: PilhaEscopos;
9
+ locais: Map<Construto, number>;
10
10
  funcaoAtual: any;
11
11
  classeAtual: any;
12
12
  cicloAtual: any;
@@ -3,7 +3,9 @@ import { Delegua } from '../../delegua';
3
3
  import { DeleguaFuncao } from '../../estruturas/funcao';
4
4
  import { InterpretadorInterface, SimboloInterface } from '../../interfaces';
5
5
  import { Classe, Enquanto, Escolha, Escreva, Fazer, Funcao, Importar, Para, Se, Tente } from '../../declaracoes';
6
- import { Super } from '../../construtos';
6
+ import { Construto, Super } from '../../construtos';
7
+ import { RetornoInterpretador } from '../retorno-interpretador';
8
+ import { ErroInterpretador } from '../erro-interpretador';
7
9
  /**
8
10
  * O Interpretador visita todos os elementos complexos gerados pelo analisador sintático (Parser)
9
11
  * e de fato executa a lógica de programação descrita no código.
@@ -13,9 +15,9 @@ export declare class InterpretadorEguaClassico implements InterpretadorInterface
13
15
  diretorioBase: any;
14
16
  global: Ambiente;
15
17
  ambiente: Ambiente;
16
- locais: Map<any, any>;
18
+ locais: Map<Construto, number>;
19
+ erros: ErroInterpretador[];
17
20
  constructor(Delegua: Delegua, diretorioBase: string);
18
- resolver(expressao: any, profundidade: number): void;
19
21
  visitarExpressaoLiteral(expressao: any): any;
20
22
  avaliar(expressao: any): any;
21
23
  visitarExpressaoAgrupamento(expressao: any): any;
@@ -58,5 +60,5 @@ export declare class InterpretadorEguaClassico implements InterpretadorInterface
58
60
  visitarExpressaoSuper(expressao: Super): any;
59
61
  paraTexto(objeto: any): any;
60
62
  executar(declaracao: any, mostrarResultado?: boolean): void;
61
- interpretar(declaracoes: any): void;
63
+ interpretar(declaracoes: any, locais: Map<Construto, number>): RetornoInterpretador;
62
64
  }
@@ -27,12 +27,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.InterpretadorEguaClassico = void 0;
30
- var tiposDeSimbolos_1 = __importDefault(require("../../tiposDeSimbolos"));
30
+ var caminho = __importStar(require("path"));
31
+ var fs = __importStar(require("fs"));
32
+ var tipos_de_simbolos_1 = __importDefault(require("../../lexador/tipos-de-simbolos"));
31
33
  var ambiente_1 = require("../../ambiente");
32
34
  var delegua_1 = require("../../delegua");
33
35
  var biblioteca_global_1 = __importDefault(require("../../bibliotecas/biblioteca-global"));
34
- var caminho = __importStar(require("path"));
35
- var fs = __importStar(require("fs"));
36
36
  var importar_biblioteca_1 = __importDefault(require("../../bibliotecas/importar-biblioteca"));
37
37
  var chamavel_1 = require("../../estruturas/chamavel");
38
38
  var funcao_padrao_1 = require("../../estruturas/funcao-padrao");
@@ -52,11 +52,9 @@ var InterpretadorEguaClassico = /** @class */ (function () {
52
52
  this.global = new ambiente_1.Ambiente();
53
53
  this.ambiente = this.global;
54
54
  this.locais = new Map();
55
+ this.erros = [];
55
56
  this.global = (0, biblioteca_global_1.default)(this, this.global);
56
57
  }
57
- InterpretadorEguaClassico.prototype.resolver = function (expressao, profundidade) {
58
- this.locais.set(expressao, profundidade);
59
- };
60
58
  InterpretadorEguaClassico.prototype.visitarExpressaoLiteral = function (expressao) {
61
59
  return expressao.valor;
62
60
  };
@@ -83,12 +81,12 @@ var InterpretadorEguaClassico = /** @class */ (function () {
83
81
  InterpretadorEguaClassico.prototype.visitarExpressaoUnaria = function (expr) {
84
82
  var direita = this.avaliar(expr.direita);
85
83
  switch (expr.operador.tipo) {
86
- case tiposDeSimbolos_1.default.SUBTRACAO:
84
+ case tipos_de_simbolos_1.default.SUBTRACAO:
87
85
  this.verificarOperandoNumero(expr.operador, direita);
88
86
  return -direita;
89
- case tiposDeSimbolos_1.default.NEGACAO:
87
+ case tipos_de_simbolos_1.default.NEGACAO:
90
88
  return !this.eVerdadeiro(direita);
91
- case tiposDeSimbolos_1.default.BIT_NOT:
89
+ case tipos_de_simbolos_1.default.BIT_NOT:
92
90
  return ~direita;
93
91
  }
94
92
  return null;
@@ -109,25 +107,25 @@ var InterpretadorEguaClassico = /** @class */ (function () {
109
107
  var esquerda = this.avaliar(expr.esquerda);
110
108
  var direita = this.avaliar(expr.direita);
111
109
  switch (expr.operador.tipo) {
112
- case tiposDeSimbolos_1.default.EXPONENCIACAO:
110
+ case tipos_de_simbolos_1.default.EXPONENCIACAO:
113
111
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
114
112
  return Math.pow(esquerda, direita);
115
- case tiposDeSimbolos_1.default.MAIOR:
113
+ case tipos_de_simbolos_1.default.MAIOR:
116
114
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
117
115
  return Number(esquerda) > Number(direita);
118
- case tiposDeSimbolos_1.default.MAIOR_IGUAL:
116
+ case tipos_de_simbolos_1.default.MAIOR_IGUAL:
119
117
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
120
118
  return Number(esquerda) >= Number(direita);
121
- case tiposDeSimbolos_1.default.MENOR:
119
+ case tipos_de_simbolos_1.default.MENOR:
122
120
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
123
121
  return Number(esquerda) < Number(direita);
124
- case tiposDeSimbolos_1.default.MENOR_IGUAL:
122
+ case tipos_de_simbolos_1.default.MENOR_IGUAL:
125
123
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
126
124
  return Number(esquerda) <= Number(direita);
127
- case tiposDeSimbolos_1.default.SUBTRACAO:
125
+ case tipos_de_simbolos_1.default.SUBTRACAO:
128
126
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
129
127
  return Number(esquerda) - Number(direita);
130
- case tiposDeSimbolos_1.default.ADICAO:
128
+ case tipos_de_simbolos_1.default.ADICAO:
131
129
  if (typeof esquerda === 'number' &&
132
130
  typeof direita === 'number') {
133
131
  return Number(esquerda) + Number(direita);
@@ -137,33 +135,33 @@ var InterpretadorEguaClassico = /** @class */ (function () {
137
135
  return String(esquerda) + String(direita);
138
136
  }
139
137
  throw new excecoes_1.ErroEmTempoDeExecucao(expr.operador, 'Operadores precisam ser dois números ou duas strings.');
140
- case tiposDeSimbolos_1.default.DIVISAO:
138
+ case tipos_de_simbolos_1.default.DIVISAO:
141
139
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
142
140
  return Number(esquerda) / Number(direita);
143
- case tiposDeSimbolos_1.default.MULTIPLICACAO:
141
+ case tipos_de_simbolos_1.default.MULTIPLICACAO:
144
142
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
145
143
  return Number(esquerda) * Number(direita);
146
- case tiposDeSimbolos_1.default.MODULO:
144
+ case tipos_de_simbolos_1.default.MODULO:
147
145
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
148
146
  return Number(esquerda) % Number(direita);
149
- case tiposDeSimbolos_1.default.BIT_AND:
147
+ case tipos_de_simbolos_1.default.BIT_AND:
150
148
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
151
149
  return Number(esquerda) & Number(direita);
152
- case tiposDeSimbolos_1.default.BIT_XOR:
150
+ case tipos_de_simbolos_1.default.BIT_XOR:
153
151
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
154
152
  return Number(esquerda) ^ Number(direita);
155
- case tiposDeSimbolos_1.default.BIT_OR:
153
+ case tipos_de_simbolos_1.default.BIT_OR:
156
154
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
157
155
  return Number(esquerda) | Number(direita);
158
- case tiposDeSimbolos_1.default.MENOR_MENOR:
156
+ case tipos_de_simbolos_1.default.MENOR_MENOR:
159
157
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
160
158
  return Number(esquerda) << Number(direita);
161
- case tiposDeSimbolos_1.default.MAIOR_MAIOR:
159
+ case tipos_de_simbolos_1.default.MAIOR_MAIOR:
162
160
  this.verificarOperandosNumeros(expr.operador, esquerda, direita);
163
161
  return Number(esquerda) >> Number(direita);
164
- case tiposDeSimbolos_1.default.DIFERENTE:
162
+ case tipos_de_simbolos_1.default.DIFERENTE:
165
163
  return !this.eIgual(esquerda, direita);
166
- case tiposDeSimbolos_1.default.IGUAL_IGUAL:
164
+ case tipos_de_simbolos_1.default.IGUAL_IGUAL:
167
165
  return this.eIgual(esquerda, direita);
168
166
  }
169
167
  return null;
@@ -238,7 +236,7 @@ var InterpretadorEguaClassico = /** @class */ (function () {
238
236
  };
239
237
  InterpretadorEguaClassico.prototype.visitarExpressaoLogica = function (expressao) {
240
238
  var esquerda = this.avaliar(expressao.esquerda);
241
- if (expressao.operador.tipo === tiposDeSimbolos_1.default.EM) {
239
+ if (expressao.operador.tipo === tipos_de_simbolos_1.default.EM) {
242
240
  var direita = this.avaliar(expressao.direita);
243
241
  if (Array.isArray(direita) || typeof direita === 'string') {
244
242
  return direita.includes(esquerda);
@@ -251,12 +249,12 @@ var InterpretadorEguaClassico = /** @class */ (function () {
251
249
  }
252
250
  }
253
251
  // se um estado for verdadeiro, retorna verdadeiro
254
- if (expressao.operador.tipo === tiposDeSimbolos_1.default.OU) {
252
+ if (expressao.operador.tipo === tipos_de_simbolos_1.default.OU) {
255
253
  if (this.eVerdadeiro(esquerda))
256
254
  return esquerda;
257
255
  }
258
256
  // se um estado for falso, retorna falso
259
- if (expressao.operador.tipo === tiposDeSimbolos_1.default.E) {
257
+ if (expressao.operador.tipo === tipos_de_simbolos_1.default.E) {
260
258
  if (!this.eVerdadeiro(esquerda))
261
259
  return esquerda;
262
260
  }
@@ -662,15 +660,20 @@ var InterpretadorEguaClassico = /** @class */ (function () {
662
660
  if (mostrarResultado === void 0) { mostrarResultado = false; }
663
661
  declaracao.aceitar(this);
664
662
  };
665
- InterpretadorEguaClassico.prototype.interpretar = function (declaracoes) {
663
+ InterpretadorEguaClassico.prototype.interpretar = function (declaracoes, locais) {
664
+ this.locais = locais;
665
+ this.erros = [];
666
666
  try {
667
667
  for (var i = 0; i < declaracoes.length; i++) {
668
668
  this.executar(declaracoes[i], false);
669
669
  }
670
670
  }
671
671
  catch (erro) {
672
- this.Delegua.erroEmTempoDeExecucao(erro);
672
+ this.erros.push(erro);
673
673
  }
674
+ return {
675
+ erros: this.erros
676
+ };
674
677
  };
675
678
  return InterpretadorEguaClassico;
676
679
  }());