@designliquido/delegua 0.9.0 → 0.9.2

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 (31) hide show
  1. package/bin/package.json +1 -1
  2. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +145 -145
  3. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
  4. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +1 -0
  5. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +10 -5
  6. package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -1
  7. package/fontes/delegua.js +8 -2
  8. package/fontes/delegua.js.map +1 -1
  9. package/fontes/interpretador/dialetos/egua-classico.js +26 -26
  10. package/fontes/interpretador/dialetos/egua-classico.js.map +1 -1
  11. package/fontes/interpretador/interpretador.js +21 -8
  12. package/fontes/interpretador/interpretador.js.map +1 -1
  13. package/fontes/lexador/dialetos/lexador-egua-classico.js +38 -38
  14. package/fontes/lexador/dialetos/lexador-egua-classico.js.map +1 -1
  15. package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.d.ts +36 -0
  16. package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.js +42 -0
  17. package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.js.map +1 -0
  18. package/fontes/lexador/dialetos/palavras-reservadas/index.d.ts +2 -0
  19. package/fontes/lexador/dialetos/palavras-reservadas/index.js +19 -0
  20. package/fontes/lexador/dialetos/palavras-reservadas/index.js.map +1 -0
  21. package/fontes/tipos-de-simbolos/egua-classico.d.ts +77 -0
  22. package/fontes/tipos-de-simbolos/egua-classico.js +79 -0
  23. package/fontes/tipos-de-simbolos/egua-classico.js.map +1 -0
  24. package/package.json +1 -1
  25. package/testes/egua-classico/interpretador.test.js +1 -1
  26. package/testes/egua-classico/interpretador.test.js.map +1 -1
  27. package/testes/interpretador.test.js +1 -1
  28. package/testes/interpretador.test.js.map +1 -1
  29. package/testes/visualg/interpretador.test.d.ts +1 -0
  30. package/testes/visualg/interpretador.test.js +69 -0
  31. package/testes/visualg/interpretador.test.js.map +1 -0
@@ -4,10 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.AvaliadorSintaticoEguaClassico = void 0;
7
- var delegua_1 = __importDefault(require("../../tipos-de-simbolos/delegua"));
8
7
  var construtos_1 = require("../../construtos");
9
8
  var erro_avaliador_sintatico_1 = require("../erro-avaliador-sintatico");
10
9
  var declaracoes_1 = require("../../declaracoes");
10
+ var egua_classico_1 = __importDefault(require("../../tipos-de-simbolos/egua-classico"));
11
11
  /**
12
12
  * O avaliador sintático (Parser) é responsável por transformar os símbolos do Lexador em estruturas de alto nível.
13
13
  * Essas estruturas de alto nível são as partes que executam lógica de programação de fato.
@@ -24,17 +24,17 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
24
24
  AvaliadorSintaticoEguaClassico.prototype.sincronizar = function () {
25
25
  this.avancarEDevolverAnterior();
26
26
  while (!this.estaNoFinal()) {
27
- if (this.simboloAnterior().tipo === delegua_1.default.PONTO_E_VIRGULA)
27
+ if (this.simboloAnterior().tipo === egua_classico_1.default.PONTO_E_VIRGULA)
28
28
  return;
29
29
  switch (this.simboloAtual().tipo) {
30
- case delegua_1.default.CLASSE:
31
- case delegua_1.default.FUNÇÃO:
32
- case delegua_1.default.VARIAVEL:
33
- case delegua_1.default.PARA:
34
- case delegua_1.default.SE:
35
- case delegua_1.default.ENQUANTO:
36
- case delegua_1.default.ESCREVA:
37
- case delegua_1.default.RETORNA:
30
+ case egua_classico_1.default.CLASSE:
31
+ case egua_classico_1.default.FUNÇÃO:
32
+ case egua_classico_1.default.VARIAVEL:
33
+ case egua_classico_1.default.PARA:
34
+ case egua_classico_1.default.SE:
35
+ case egua_classico_1.default.ENQUANTO:
36
+ case egua_classico_1.default.ESCREVA:
37
+ case egua_classico_1.default.RETORNA:
38
38
  return;
39
39
  }
40
40
  this.avancarEDevolverAnterior();
@@ -71,7 +71,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
71
71
  return this.simbolos[this.atual + posicao];
72
72
  };
73
73
  AvaliadorSintaticoEguaClassico.prototype.estaNoFinal = function () {
74
- return this.simboloAtual().tipo === delegua_1.default.EOF;
74
+ return this.simboloAtual().tipo === egua_classico_1.default.EOF;
75
75
  };
76
76
  AvaliadorSintaticoEguaClassico.prototype.avancarEDevolverAnterior = function () {
77
77
  if (!this.estaNoFinal())
@@ -93,96 +93,96 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
93
93
  return false;
94
94
  };
95
95
  AvaliadorSintaticoEguaClassico.prototype.primario = function () {
96
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.SUPER)) {
96
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.SUPER)) {
97
97
  var simboloChave = this.simboloAnterior();
98
- this.consumir(delegua_1.default.PONTO, "Esperado '.' após 'super'.");
99
- var metodo = this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome do método da SuperClasse.');
98
+ this.consumir(egua_classico_1.default.PONTO, "Esperado '.' após 'super'.");
99
+ var metodo = this.consumir(egua_classico_1.default.IDENTIFICADOR, 'Esperado nome do método da SuperClasse.');
100
100
  return new construtos_1.Super(this.hashArquivo, simboloChave, metodo);
101
101
  }
102
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.COLCHETE_ESQUERDO)) {
102
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.COLCHETE_ESQUERDO)) {
103
103
  var valores = [];
104
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.COLCHETE_DIREITO)) {
104
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.COLCHETE_DIREITO)) {
105
105
  return new construtos_1.Vetor(this.hashArquivo, 0, []);
106
106
  }
107
- while (!this.verificarSeSimboloAtualEIgualA(delegua_1.default.COLCHETE_DIREITO)) {
107
+ while (!this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.COLCHETE_DIREITO)) {
108
108
  var valor = this.atribuir();
109
109
  valores.push(valor);
110
110
  if (this.simboloAtual().tipo !==
111
- delegua_1.default.COLCHETE_DIREITO) {
112
- this.consumir(delegua_1.default.VIRGULA, 'Esperado vírgula antes da próxima expressão.');
111
+ egua_classico_1.default.COLCHETE_DIREITO) {
112
+ this.consumir(egua_classico_1.default.VIRGULA, 'Esperado vírgula antes da próxima expressão.');
113
113
  }
114
114
  }
115
115
  return new construtos_1.Vetor(this.hashArquivo, 0, valores);
116
116
  }
117
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_ESQUERDA)) {
117
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.CHAVE_ESQUERDA)) {
118
118
  var chaves = [];
119
119
  var valores = [];
120
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_DIREITA)) {
120
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.CHAVE_DIREITA)) {
121
121
  return new construtos_1.Dicionario(this.hashArquivo, 0, [], []);
122
122
  }
123
- while (!this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_DIREITA)) {
123
+ while (!this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.CHAVE_DIREITA)) {
124
124
  var chave = this.atribuir();
125
- this.consumir(delegua_1.default.DOIS_PONTOS, "Esperado ':' entre chave e valor.");
125
+ this.consumir(egua_classico_1.default.DOIS_PONTOS, "Esperado ':' entre chave e valor.");
126
126
  var valor = this.atribuir();
127
127
  chaves.push(chave);
128
128
  valores.push(valor);
129
- if (this.simboloAtual().tipo !== delegua_1.default.CHAVE_DIREITA) {
130
- this.consumir(delegua_1.default.VIRGULA, 'Esperado vírgula antes da próxima expressão.');
129
+ if (this.simboloAtual().tipo !== egua_classico_1.default.CHAVE_DIREITA) {
130
+ this.consumir(egua_classico_1.default.VIRGULA, 'Esperado vírgula antes da próxima expressão.');
131
131
  }
132
132
  }
133
133
  return new construtos_1.Dicionario(this.hashArquivo, 0, chaves, valores);
134
134
  }
135
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.FUNÇÃO))
135
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.FUNÇÃO))
136
136
  return this.corpoDaFuncao('função');
137
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.FALSO))
137
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.FALSO))
138
138
  return new construtos_1.Literal(this.hashArquivo, 0, false);
139
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VERDADEIRO))
139
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.VERDADEIRO))
140
140
  return new construtos_1.Literal(this.hashArquivo, 0, true);
141
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.NULO))
141
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.NULO))
142
142
  return new construtos_1.Literal(this.hashArquivo, 0, null);
143
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.ISTO))
143
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.ISTO))
144
144
  return new construtos_1.Isto(this.hashArquivo, Number(this.simboloAnterior()));
145
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.NUMERO, delegua_1.default.TEXTO)) {
145
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.NUMERO, egua_classico_1.default.TEXTO)) {
146
146
  return new construtos_1.Literal(this.hashArquivo, 0, this.simboloAnterior().literal);
147
147
  }
148
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.IDENTIFICADOR)) {
148
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.IDENTIFICADOR)) {
149
149
  return new construtos_1.Variavel(this.hashArquivo, this.simboloAnterior());
150
150
  }
151
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PARENTESE_ESQUERDO)) {
151
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.PARENTESE_ESQUERDO)) {
152
152
  var expressao = this.expressao();
153
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após a expressão.");
153
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após a expressão.");
154
154
  return new construtos_1.Agrupamento(this.hashArquivo, 0, expressao);
155
155
  }
156
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.IMPORTAR))
156
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.IMPORTAR))
157
157
  return this.declaracaoImportar();
158
158
  throw this.erro(this.simboloAtual(), 'Esperado expressão.');
159
159
  };
160
160
  AvaliadorSintaticoEguaClassico.prototype.finalizarChamada = function (entidadeChamada) {
161
161
  var argumentos = [];
162
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PARENTESE_DIREITO)) {
162
+ if (!this.verificarTipoSimboloAtual(egua_classico_1.default.PARENTESE_DIREITO)) {
163
163
  do {
164
164
  if (argumentos.length >= 255) {
165
165
  throw this.erro(this.simboloAtual(), 'Não pode haver mais de 255 argumentos.');
166
166
  }
167
167
  argumentos.push(this.expressao());
168
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
168
+ } while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.VIRGULA));
169
169
  }
170
- var parenteseDireito = this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após os argumentos.");
170
+ var parenteseDireito = this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após os argumentos.");
171
171
  return new construtos_1.Chamada(this.hashArquivo, entidadeChamada, parenteseDireito, argumentos);
172
172
  };
173
173
  AvaliadorSintaticoEguaClassico.prototype.chamar = function () {
174
174
  var expressao = this.primario();
175
175
  while (true) {
176
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PARENTESE_ESQUERDO)) {
176
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.PARENTESE_ESQUERDO)) {
177
177
  expressao = this.finalizarChamada(expressao);
178
178
  }
179
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO)) {
180
- var nome = this.consumir(delegua_1.default.IDENTIFICADOR, "Esperado nome do método após '.'.");
179
+ else if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.PONTO)) {
180
+ var nome = this.consumir(egua_classico_1.default.IDENTIFICADOR, "Esperado nome do método após '.'.");
181
181
  expressao = new construtos_1.AcessoMetodo(this.hashArquivo, expressao, nome);
182
182
  }
183
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.COLCHETE_ESQUERDO)) {
183
+ else if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.COLCHETE_ESQUERDO)) {
184
184
  var indice = this.expressao();
185
- var simboloFechamento = this.consumir(delegua_1.default.COLCHETE_DIREITO, "Esperado ']' após escrita do indice.");
185
+ var simboloFechamento = this.consumir(egua_classico_1.default.COLCHETE_DIREITO, "Esperado ']' após escrita do indice.");
186
186
  expressao = new construtos_1.AcessoIndiceVariavel(this.hashArquivo, expressao, indice, simboloFechamento);
187
187
  }
188
188
  else {
@@ -192,7 +192,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
192
192
  return expressao;
193
193
  };
194
194
  AvaliadorSintaticoEguaClassico.prototype.unario = function () {
195
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.NEGACAO, delegua_1.default.SUBTRACAO, delegua_1.default.BIT_NOT)) {
195
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.NEGACAO, egua_classico_1.default.SUBTRACAO, egua_classico_1.default.BIT_NOT)) {
196
196
  var operador = this.simboloAnterior();
197
197
  var direito = this.unario();
198
198
  return new construtos_1.Unario(this.hashArquivo, operador, direito);
@@ -201,7 +201,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
201
201
  };
202
202
  AvaliadorSintaticoEguaClassico.prototype.exponenciacao = function () {
203
203
  var expressao = this.unario();
204
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.EXPONENCIACAO)) {
204
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.EXPONENCIACAO)) {
205
205
  var operador = this.simboloAnterior();
206
206
  var direito = this.unario();
207
207
  expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
@@ -210,7 +210,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
210
210
  };
211
211
  AvaliadorSintaticoEguaClassico.prototype.multiplicar = function () {
212
212
  var expressao = this.exponenciacao();
213
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.DIVISAO, delegua_1.default.MULTIPLICACAO, delegua_1.default.MODULO)) {
213
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.DIVISAO, egua_classico_1.default.MULTIPLICACAO, egua_classico_1.default.MODULO)) {
214
214
  var operador = this.simboloAnterior();
215
215
  var direito = this.exponenciacao();
216
216
  expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
@@ -219,7 +219,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
219
219
  };
220
220
  AvaliadorSintaticoEguaClassico.prototype.adicionar = function () {
221
221
  var expressao = this.multiplicar();
222
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.SUBTRACAO, delegua_1.default.ADICAO)) {
222
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.SUBTRACAO, egua_classico_1.default.ADICAO)) {
223
223
  var operador = this.simboloAnterior();
224
224
  var direito = this.multiplicar();
225
225
  expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
@@ -228,7 +228,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
228
228
  };
229
229
  AvaliadorSintaticoEguaClassico.prototype.bitFill = function () {
230
230
  var expressao = this.adicionar();
231
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.MENOR_MENOR, delegua_1.default.MAIOR_MAIOR)) {
231
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.MENOR_MENOR, egua_classico_1.default.MAIOR_MAIOR)) {
232
232
  var operador = this.simboloAnterior();
233
233
  var direito = this.adicionar();
234
234
  expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
@@ -237,7 +237,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
237
237
  };
238
238
  AvaliadorSintaticoEguaClassico.prototype.bitE = function () {
239
239
  var expressao = this.bitFill();
240
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.BIT_AND)) {
240
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.BIT_AND)) {
241
241
  var operador = this.simboloAnterior();
242
242
  var direito = this.bitFill();
243
243
  expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
@@ -246,7 +246,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
246
246
  };
247
247
  AvaliadorSintaticoEguaClassico.prototype.bitOu = function () {
248
248
  var expressao = this.bitE();
249
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.BIT_OR, delegua_1.default.BIT_XOR)) {
249
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.BIT_OR, egua_classico_1.default.BIT_XOR)) {
250
250
  var operador = this.simboloAnterior();
251
251
  var direito = this.bitE();
252
252
  expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
@@ -255,7 +255,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
255
255
  };
256
256
  AvaliadorSintaticoEguaClassico.prototype.comparar = function () {
257
257
  var expressao = this.bitOu();
258
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.MAIOR, delegua_1.default.MAIOR_IGUAL, delegua_1.default.MENOR, delegua_1.default.MENOR_IGUAL)) {
258
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.MAIOR, egua_classico_1.default.MAIOR_IGUAL, egua_classico_1.default.MENOR, egua_classico_1.default.MENOR_IGUAL)) {
259
259
  var operador = this.simboloAnterior();
260
260
  var direito = this.bitOu();
261
261
  expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
@@ -264,7 +264,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
264
264
  };
265
265
  AvaliadorSintaticoEguaClassico.prototype.comparacaoIgualdade = function () {
266
266
  var expressao = this.comparar();
267
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.DIFERENTE, delegua_1.default.IGUAL_IGUAL)) {
267
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.DIFERENTE, egua_classico_1.default.IGUAL_IGUAL)) {
268
268
  var operador = this.simboloAnterior();
269
269
  var direito = this.comparar();
270
270
  expressao = new construtos_1.Binario(this.hashArquivo, expressao, operador, direito);
@@ -273,7 +273,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
273
273
  };
274
274
  AvaliadorSintaticoEguaClassico.prototype.em = function () {
275
275
  var expressao = this.comparacaoIgualdade();
276
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.EM)) {
276
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.EM)) {
277
277
  var operador = this.simboloAnterior();
278
278
  var direito = this.comparacaoIgualdade();
279
279
  expressao = new construtos_1.Logico(this.hashArquivo, expressao, operador, direito);
@@ -282,7 +282,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
282
282
  };
283
283
  AvaliadorSintaticoEguaClassico.prototype.e = function () {
284
284
  var expressao = this.em();
285
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.E)) {
285
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.E)) {
286
286
  var operador = this.simboloAnterior();
287
287
  var direito = this.em();
288
288
  expressao = new construtos_1.Logico(this.hashArquivo, expressao, operador, direito);
@@ -291,7 +291,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
291
291
  };
292
292
  AvaliadorSintaticoEguaClassico.prototype.ou = function () {
293
293
  var expressao = this.e();
294
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.OU)) {
294
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.OU)) {
295
295
  var operador = this.simboloAnterior();
296
296
  var direito = this.e();
297
297
  expressao = new construtos_1.Logico(this.hashArquivo, expressao, operador, direito);
@@ -300,7 +300,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
300
300
  };
301
301
  AvaliadorSintaticoEguaClassico.prototype.atribuir = function () {
302
302
  var expressao = this.ou();
303
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.IGUAL)) {
303
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.IGUAL)) {
304
304
  var igual = this.simboloAnterior();
305
305
  var valor = this.atribuir();
306
306
  if (expressao instanceof construtos_1.Variavel) {
@@ -323,36 +323,36 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
323
323
  };
324
324
  AvaliadorSintaticoEguaClassico.prototype.declaracaoEscreva = function () {
325
325
  var simboloAtual = this.simboloAtual();
326
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' antes dos valores em escreva.");
326
+ this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '(' antes dos valores em escreva.");
327
327
  var valor = this.expressao();
328
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após os valores em escreva.");
329
- this.consumir(delegua_1.default.PONTO_E_VIRGULA, "Esperado ';' após o valor.");
328
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após os valores em escreva.");
329
+ this.consumir(egua_classico_1.default.PONTO_E_VIRGULA, "Esperado ';' após o valor.");
330
330
  return new declaracoes_1.Escreva(Number(simboloAtual.linha), simboloAtual.hashArquivo, [valor]);
331
331
  };
332
332
  AvaliadorSintaticoEguaClassico.prototype.declaracaoExpressao = function () {
333
333
  var expressao = this.expressao();
334
- this.consumir(delegua_1.default.PONTO_E_VIRGULA, "Esperado ';' após expressão.");
334
+ this.consumir(egua_classico_1.default.PONTO_E_VIRGULA, "Esperado ';' após expressão.");
335
335
  return new declaracoes_1.Expressao(expressao);
336
336
  };
337
337
  AvaliadorSintaticoEguaClassico.prototype.blocoEscopo = function () {
338
338
  var declaracoes = [];
339
- while (!this.verificarTipoSimboloAtual(delegua_1.default.CHAVE_DIREITA) &&
339
+ while (!this.verificarTipoSimboloAtual(egua_classico_1.default.CHAVE_DIREITA) &&
340
340
  !this.estaNoFinal()) {
341
341
  declaracoes.push(this.declaracao());
342
342
  }
343
- this.consumir(delegua_1.default.CHAVE_DIREITA, "Esperado '}' após o bloco.");
343
+ this.consumir(egua_classico_1.default.CHAVE_DIREITA, "Esperado '}' após o bloco.");
344
344
  return declaracoes;
345
345
  };
346
346
  AvaliadorSintaticoEguaClassico.prototype.declaracaoSe = function () {
347
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'se'.");
347
+ this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'se'.");
348
348
  var condicao = this.expressao();
349
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após condição do se.");
349
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após condição do se.");
350
350
  var caminhoEntao = this.resolverDeclaracao();
351
351
  var caminhosSeSenao = [];
352
- while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.SENÃOSE)) {
353
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'senãose'.");
352
+ while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.SENÃOSE)) {
353
+ this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'senãose'.");
354
354
  var condicaoSeSenao = this.expressao();
355
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' apóes codição do 'senãose.");
355
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' apóes codição do 'senãose.");
356
356
  var caminho = this.resolverDeclaracao();
357
357
  caminhosSeSenao.push({
358
358
  condicao: condicaoSeSenao,
@@ -360,7 +360,7 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
360
360
  });
361
361
  }
362
362
  var caminhoSenao = null;
363
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.SENÃO)) {
363
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.SENÃO)) {
364
364
  caminhoSenao = this.resolverDeclaracao();
365
365
  }
366
366
  return new declaracoes_1.Se(condicao, caminhoEntao, caminhosSeSenao, caminhoSenao);
@@ -368,9 +368,9 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
368
368
  AvaliadorSintaticoEguaClassico.prototype.declaracaoEnquanto = function () {
369
369
  try {
370
370
  this.ciclos += 1;
371
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'enquanto'.");
371
+ this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'enquanto'.");
372
372
  var condicao = this.expressao();
373
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após condicional.");
373
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após condicional.");
374
374
  var corpo = this.resolverDeclaracao();
375
375
  return new declaracoes_1.Enquanto(condicao, corpo);
376
376
  }
@@ -382,27 +382,27 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
382
382
  try {
383
383
  var simboloPara = this.simboloAnterior();
384
384
  this.ciclos += 1;
385
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'para'.");
385
+ this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '(' após 'para'.");
386
386
  var inicializador = void 0;
387
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PONTO_E_VIRGULA)) {
387
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.PONTO_E_VIRGULA)) {
388
388
  inicializador = null;
389
389
  }
390
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VARIAVEL)) {
390
+ else if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.VARIAVEL)) {
391
391
  inicializador = this.declaracaoDeVariavel();
392
392
  }
393
393
  else {
394
394
  inicializador = this.declaracaoExpressao();
395
395
  }
396
396
  var condicao = null;
397
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PONTO_E_VIRGULA)) {
397
+ if (!this.verificarTipoSimboloAtual(egua_classico_1.default.PONTO_E_VIRGULA)) {
398
398
  condicao = this.expressao();
399
399
  }
400
- this.consumir(delegua_1.default.PONTO_E_VIRGULA, "Esperado ';' após valores da condicional");
400
+ this.consumir(egua_classico_1.default.PONTO_E_VIRGULA, "Esperado ';' após valores da condicional");
401
401
  var incrementar = null;
402
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PARENTESE_DIREITO)) {
402
+ if (!this.verificarTipoSimboloAtual(egua_classico_1.default.PARENTESE_DIREITO)) {
403
403
  incrementar = this.expressao();
404
404
  }
405
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após cláusulas");
405
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após cláusulas");
406
406
  var corpo = this.resolverDeclaracao();
407
407
  return new declaracoes_1.Para(this.hashArquivo, Number(simboloPara.linha), inicializador, condicao, incrementar, corpo);
408
408
  }
@@ -414,68 +414,68 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
414
414
  if (this.ciclos < 1) {
415
415
  this.erro(this.simboloAnterior(), "'pausa' deve estar dentro de um loop.");
416
416
  }
417
- this.consumir(delegua_1.default.PONTO_E_VIRGULA, "Esperado ';' após 'pausa'.");
417
+ this.consumir(egua_classico_1.default.PONTO_E_VIRGULA, "Esperado ';' após 'pausa'.");
418
418
  return new declaracoes_1.Sustar(this.simboloAtual());
419
419
  };
420
420
  AvaliadorSintaticoEguaClassico.prototype.declaracaoContinua = function () {
421
421
  if (this.ciclos < 1) {
422
422
  this.erro(this.simboloAnterior(), "'continua' precisa estar em um laço de repetição.");
423
423
  }
424
- this.consumir(delegua_1.default.PONTO_E_VIRGULA, "Esperado ';' após 'continua'.");
424
+ this.consumir(egua_classico_1.default.PONTO_E_VIRGULA, "Esperado ';' após 'continua'.");
425
425
  return new declaracoes_1.Continua(this.simboloAtual());
426
426
  };
427
427
  AvaliadorSintaticoEguaClassico.prototype.declaracaoRetorna = function () {
428
428
  var palavraChave = this.simboloAnterior();
429
429
  var valor = null;
430
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PONTO_E_VIRGULA)) {
430
+ if (!this.verificarTipoSimboloAtual(egua_classico_1.default.PONTO_E_VIRGULA)) {
431
431
  valor = this.expressao();
432
432
  }
433
- this.consumir(delegua_1.default.PONTO_E_VIRGULA, "Esperado ';' após o retorno.");
433
+ this.consumir(egua_classico_1.default.PONTO_E_VIRGULA, "Esperado ';' após o retorno.");
434
434
  return new declaracoes_1.Retorna(palavraChave, valor);
435
435
  };
436
436
  AvaliadorSintaticoEguaClassico.prototype.declaracaoEscolha = function () {
437
437
  try {
438
438
  this.ciclos += 1;
439
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '{' após 'escolha'.");
439
+ this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '{' após 'escolha'.");
440
440
  var condicao = this.expressao();
441
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado '}' após a condição de 'escolha'.");
442
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do 'escolha'.");
441
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado '}' após a condição de 'escolha'.");
442
+ this.consumir(egua_classico_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do 'escolha'.");
443
443
  var caminhos = [];
444
444
  var caminhoPadrao = null;
445
- while (!this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_DIREITA) &&
445
+ while (!this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.CHAVE_DIREITA) &&
446
446
  !this.estaNoFinal()) {
447
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CASO)) {
447
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.CASO)) {
448
448
  var caminhoCondicoes = [this.expressao()];
449
- this.consumir(delegua_1.default.DOIS_PONTOS, "Esperado ':' após o 'caso'.");
450
- while (this.verificarTipoSimboloAtual(delegua_1.default.CASO)) {
451
- this.consumir(delegua_1.default.CASO, null);
449
+ this.consumir(egua_classico_1.default.DOIS_PONTOS, "Esperado ':' após o 'caso'.");
450
+ while (this.verificarTipoSimboloAtual(egua_classico_1.default.CASO)) {
451
+ this.consumir(egua_classico_1.default.CASO, null);
452
452
  caminhoCondicoes.push(this.expressao());
453
- this.consumir(delegua_1.default.DOIS_PONTOS, "Esperado ':' após declaração do 'caso'.");
453
+ this.consumir(egua_classico_1.default.DOIS_PONTOS, "Esperado ':' após declaração do 'caso'.");
454
454
  }
455
455
  var declaracoes = [];
456
456
  do {
457
457
  declaracoes.push(this.resolverDeclaracao());
458
- } while (!this.verificarTipoSimboloAtual(delegua_1.default.CASO) &&
459
- !this.verificarTipoSimboloAtual(delegua_1.default.PADRAO) &&
460
- !this.verificarTipoSimboloAtual(delegua_1.default.CHAVE_DIREITA));
458
+ } while (!this.verificarTipoSimboloAtual(egua_classico_1.default.CASO) &&
459
+ !this.verificarTipoSimboloAtual(egua_classico_1.default.PADRAO) &&
460
+ !this.verificarTipoSimboloAtual(egua_classico_1.default.CHAVE_DIREITA));
461
461
  caminhos.push({
462
462
  condicoes: caminhoCondicoes,
463
463
  declaracoes: declaracoes,
464
464
  });
465
465
  }
466
- else if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PADRAO)) {
466
+ else if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.PADRAO)) {
467
467
  if (caminhoPadrao !== null) {
468
468
  var excecao = new erro_avaliador_sintatico_1.ErroAvaliadorSintatico(this.simboloAtual(), "Você só pode ter um 'padrao' em cada declaração de 'escolha'.");
469
469
  this.erros.push(excecao);
470
470
  throw excecao;
471
471
  }
472
- this.consumir(delegua_1.default.DOIS_PONTOS, "Esperado ':' após declaração do 'padrao'.");
472
+ this.consumir(egua_classico_1.default.DOIS_PONTOS, "Esperado ':' após declaração do 'padrao'.");
473
473
  var declaracoes = [];
474
474
  do {
475
475
  declaracoes.push(this.resolverDeclaracao());
476
- } while (!this.verificarTipoSimboloAtual(delegua_1.default.CASO) &&
477
- !this.verificarTipoSimboloAtual(delegua_1.default.PADRAO) &&
478
- !this.verificarTipoSimboloAtual(delegua_1.default.CHAVE_DIREITA));
476
+ } while (!this.verificarTipoSimboloAtual(egua_classico_1.default.CASO) &&
477
+ !this.verificarTipoSimboloAtual(egua_classico_1.default.PADRAO) &&
478
+ !this.verificarTipoSimboloAtual(egua_classico_1.default.CHAVE_DIREITA));
479
479
  caminhoPadrao = {
480
480
  declaracoes: declaracoes,
481
481
  };
@@ -488,9 +488,9 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
488
488
  }
489
489
  };
490
490
  AvaliadorSintaticoEguaClassico.prototype.declaracaoImportar = function () {
491
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' após declaração.");
491
+ this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '(' após declaração.");
492
492
  var caminho = this.expressao();
493
- var simboloFechamento = this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
493
+ var simboloFechamento = this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após declaração.");
494
494
  // tive que fazer isso para poder tipar a func expressão
495
495
  // não sei isso e certo provavelmente não.
496
496
  // o parametro valor no tipo literal esta como any
@@ -500,21 +500,21 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
500
500
  return new declaracoes_1.Importar(caminho, simboloFechamento);
501
501
  };
502
502
  AvaliadorSintaticoEguaClassico.prototype.declaracaoTente = function () {
503
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'tente'.");
503
+ this.consumir(egua_classico_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'tente'.");
504
504
  var tryBlock = this.blocoEscopo();
505
505
  var catchBlock = null;
506
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PEGUE)) {
507
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'pegue'.");
506
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.PEGUE)) {
507
+ this.consumir(egua_classico_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'pegue'.");
508
508
  catchBlock = this.blocoEscopo();
509
509
  }
510
510
  var elseBlock = null;
511
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.SENÃO)) {
512
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'pegue'.");
511
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.SENÃO)) {
512
+ this.consumir(egua_classico_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'pegue'.");
513
513
  elseBlock = this.blocoEscopo();
514
514
  }
515
515
  var finallyBlock = null;
516
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.FINALMENTE)) {
517
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'pegue'.");
516
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.FINALMENTE)) {
517
+ this.consumir(egua_classico_1.default.CHAVE_ESQUERDA, "Esperado '{' após a declaração 'pegue'.");
518
518
  finallyBlock = this.blocoEscopo();
519
519
  }
520
520
  return new declaracoes_1.Tente(0, 0, tryBlock, catchBlock, elseBlock, finallyBlock);
@@ -523,10 +523,10 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
523
523
  try {
524
524
  this.ciclos += 1;
525
525
  var caminhoFazer = this.resolverDeclaracao();
526
- this.consumir(delegua_1.default.ENQUANTO, "Esperado declaração do 'enquanto' após o escopo do 'fazer'.");
527
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' após declaração 'enquanto'.");
526
+ this.consumir(egua_classico_1.default.ENQUANTO, "Esperado declaração do 'enquanto' após o escopo do 'fazer'.");
527
+ this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '(' após declaração 'enquanto'.");
528
528
  var condicaoEnquanto = this.expressao();
529
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após declaração do 'enquanto'.");
529
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após declaração do 'enquanto'.");
530
530
  return new declaracoes_1.Fazer(0, 0, caminhoFazer, condicaoEnquanto);
531
531
  }
532
532
  finally {
@@ -534,99 +534,99 @@ var AvaliadorSintaticoEguaClassico = /** @class */ (function () {
534
534
  }
535
535
  };
536
536
  AvaliadorSintaticoEguaClassico.prototype.resolverDeclaracao = function () {
537
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.FAZER))
537
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.FAZER))
538
538
  return this.declaracaoFazer();
539
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.TENTE))
539
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.TENTE))
540
540
  return this.declaracaoTente();
541
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.ESCOLHA))
541
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.ESCOLHA))
542
542
  return this.declaracaoEscolha();
543
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.RETORNA))
543
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.RETORNA))
544
544
  return this.declaracaoRetorna();
545
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CONTINUA))
545
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.CONTINUA))
546
546
  return this.declaracaoContinua();
547
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PAUSA))
547
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.PAUSA))
548
548
  return this.declaracaoSustar();
549
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.PARA))
549
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.PARA))
550
550
  return this.declaracaoPara();
551
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.ENQUANTO))
551
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.ENQUANTO))
552
552
  return this.declaracaoEnquanto();
553
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.SE))
553
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.SE))
554
554
  return this.declaracaoSe();
555
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.ESCREVA))
555
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.ESCREVA))
556
556
  return this.declaracaoEscreva();
557
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CHAVE_ESQUERDA))
557
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.CHAVE_ESQUERDA))
558
558
  return new declaracoes_1.Bloco(0, 0, this.blocoEscopo());
559
559
  return this.declaracaoExpressao();
560
560
  };
561
561
  AvaliadorSintaticoEguaClassico.prototype.declaracaoDeVariavel = function () {
562
- var nome = this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome de variável.');
562
+ var nome = this.consumir(egua_classico_1.default.IDENTIFICADOR, 'Esperado nome de variável.');
563
563
  var inicializador = null;
564
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.IGUAL)) {
564
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.IGUAL)) {
565
565
  inicializador = this.expressao();
566
566
  }
567
- this.consumir(delegua_1.default.PONTO_E_VIRGULA, "Esperado ';' após a declaração da variável.");
567
+ this.consumir(egua_classico_1.default.PONTO_E_VIRGULA, "Esperado ';' após a declaração da variável.");
568
568
  return new declaracoes_1.Var(nome, inicializador);
569
569
  };
570
570
  AvaliadorSintaticoEguaClassico.prototype.funcao = function (kind) {
571
- var nome = this.consumir(delegua_1.default.IDENTIFICADOR, "Esperado nome ".concat(kind, "."));
571
+ var nome = this.consumir(egua_classico_1.default.IDENTIFICADOR, "Esperado nome ".concat(kind, "."));
572
572
  return new declaracoes_1.FuncaoDeclaracao(nome, this.corpoDaFuncao(kind));
573
573
  };
574
574
  AvaliadorSintaticoEguaClassico.prototype.corpoDaFuncao = function (kind) {
575
- this.consumir(delegua_1.default.PARENTESE_ESQUERDO, "Esperado '(' ap\u00F3s o nome ".concat(kind, "."));
575
+ this.consumir(egua_classico_1.default.PARENTESE_ESQUERDO, "Esperado '(' ap\u00F3s o nome ".concat(kind, "."));
576
576
  var parametros = [];
577
- if (!this.verificarTipoSimboloAtual(delegua_1.default.PARENTESE_DIREITO)) {
577
+ if (!this.verificarTipoSimboloAtual(egua_classico_1.default.PARENTESE_DIREITO)) {
578
578
  do {
579
579
  if (parametros.length >= 255) {
580
580
  this.erro(this.simboloAtual(), 'Não pode haver mais de 255 parâmetros');
581
581
  }
582
582
  var parametro = {};
583
- if (this.simboloAtual().tipo === delegua_1.default.MULTIPLICACAO) {
584
- this.consumir(delegua_1.default.MULTIPLICACAO, null);
583
+ if (this.simboloAtual().tipo === egua_classico_1.default.MULTIPLICACAO) {
584
+ this.consumir(egua_classico_1.default.MULTIPLICACAO, null);
585
585
  parametro['tipo'] = 'estrela';
586
586
  }
587
587
  else {
588
588
  parametro['tipo'] = 'padrao';
589
589
  }
590
- parametro['nome'] = this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome do parâmetro.');
591
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.IGUAL)) {
590
+ parametro['nome'] = this.consumir(egua_classico_1.default.IDENTIFICADOR, 'Esperado nome do parâmetro.');
591
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.IGUAL)) {
592
592
  parametro['padrao'] = this.primario();
593
593
  }
594
594
  parametros.push(parametro);
595
595
  if (parametro['tipo'] === 'estrela')
596
596
  break;
597
- } while (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VIRGULA));
597
+ } while (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.VIRGULA));
598
598
  }
599
- this.consumir(delegua_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
600
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do ".concat(kind, "."));
599
+ this.consumir(egua_classico_1.default.PARENTESE_DIREITO, "Esperado ')' após parâmetros.");
600
+ this.consumir(egua_classico_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo do ".concat(kind, "."));
601
601
  var corpo = this.blocoEscopo();
602
602
  return new construtos_1.FuncaoConstruto(this.hashArquivo, 0, parametros, corpo);
603
603
  };
604
604
  AvaliadorSintaticoEguaClassico.prototype.declaracaoDeClasse = function () {
605
- var nome = this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome da classe.');
605
+ var nome = this.consumir(egua_classico_1.default.IDENTIFICADOR, 'Esperado nome da classe.');
606
606
  var superClasse = null;
607
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.HERDA)) {
608
- this.consumir(delegua_1.default.IDENTIFICADOR, 'Esperado nome da SuperClasse.');
607
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.HERDA)) {
608
+ this.consumir(egua_classico_1.default.IDENTIFICADOR, 'Esperado nome da SuperClasse.');
609
609
  superClasse = new construtos_1.Variavel(this.hashArquivo, this.simboloAnterior());
610
610
  }
611
- this.consumir(delegua_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo da classe.");
611
+ this.consumir(egua_classico_1.default.CHAVE_ESQUERDA, "Esperado '{' antes do escopo da classe.");
612
612
  var metodos = [];
613
- while (!this.verificarTipoSimboloAtual(delegua_1.default.CHAVE_DIREITA) &&
613
+ while (!this.verificarTipoSimboloAtual(egua_classico_1.default.CHAVE_DIREITA) &&
614
614
  !this.estaNoFinal()) {
615
615
  metodos.push(this.funcao('método'));
616
616
  }
617
- this.consumir(delegua_1.default.CHAVE_DIREITA, "Esperado '}' após o escopo da classe.");
617
+ this.consumir(egua_classico_1.default.CHAVE_DIREITA, "Esperado '}' após o escopo da classe.");
618
618
  return new declaracoes_1.Classe(nome, superClasse, metodos);
619
619
  };
620
620
  AvaliadorSintaticoEguaClassico.prototype.declaracao = function () {
621
621
  try {
622
- if (this.verificarTipoSimboloAtual(delegua_1.default.FUNÇÃO) &&
623
- this.verificarTipoProximoSimbolo(delegua_1.default.IDENTIFICADOR)) {
624
- this.consumir(delegua_1.default.FUNÇÃO, null);
622
+ if (this.verificarTipoSimboloAtual(egua_classico_1.default.FUNÇÃO) &&
623
+ this.verificarTipoProximoSimbolo(egua_classico_1.default.IDENTIFICADOR)) {
624
+ this.consumir(egua_classico_1.default.FUNÇÃO, null);
625
625
  return this.funcao('função');
626
626
  }
627
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.VARIAVEL))
627
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.VARIAVEL))
628
628
  return this.declaracaoDeVariavel();
629
- if (this.verificarSeSimboloAtualEIgualA(delegua_1.default.CLASSE))
629
+ if (this.verificarSeSimboloAtualEIgualA(egua_classico_1.default.CLASSE))
630
630
  return this.declaracaoDeClasse();
631
631
  return this.resolverDeclaracao();
632
632
  }