@designliquido/delegua 0.9.3 → 0.9.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.
- package/README.md +25 -3
- package/bin/delegua +1 -1
- package/bin/delegua.cmd +1 -1
- package/bin/package.json +7 -5
- package/coverage/lcov-report/sorter.js +4 -4
- package/coverage/lcov-report/sorter.js.map +1 -1
- package/execucao.d.ts +1 -0
- package/execucao.js +29 -0
- package/execucao.js.map +1 -0
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js +108 -105
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico.js +226 -232
- package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js +35 -55
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-birl.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +211 -216
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +231 -237
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +3 -0
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +188 -121
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -1
- package/fontes/avaliador-sintatico/erro-avaliador-sintatico.js +6 -24
- package/fontes/avaliador-sintatico/erro-avaliador-sintatico.js.map +1 -1
- package/fontes/bibliotecas/biblioteca-global.js +206 -367
- package/fontes/bibliotecas/biblioteca-global.js.map +1 -1
- package/fontes/bibliotecas/importar-biblioteca.js +28 -29
- package/fontes/bibliotecas/importar-biblioteca.js.map +1 -1
- package/fontes/bibliotecas/primitivas-texto.js +9 -22
- package/fontes/bibliotecas/primitivas-texto.js.map +1 -1
- package/fontes/bibliotecas/primitivas-vetor.js +12 -14
- package/fontes/bibliotecas/primitivas-vetor.js.map +1 -1
- package/fontes/construtos/acesso-indice-variavel.js +6 -50
- package/fontes/construtos/acesso-indice-variavel.js.map +1 -1
- package/fontes/construtos/acesso-metodo.js +6 -50
- package/fontes/construtos/acesso-metodo.js.map +1 -1
- package/fontes/construtos/agrupamento.js +6 -50
- package/fontes/construtos/agrupamento.js.map +1 -1
- package/fontes/construtos/atribuicao-sobrescrita.js +6 -50
- package/fontes/construtos/atribuicao-sobrescrita.js.map +1 -1
- package/fontes/construtos/atribuir.js +6 -50
- package/fontes/construtos/atribuir.js.map +1 -1
- package/fontes/construtos/binario.js +6 -50
- package/fontes/construtos/binario.js.map +1 -1
- package/fontes/construtos/chamada.js +6 -50
- package/fontes/construtos/chamada.js.map +1 -1
- package/fontes/construtos/definir-valor.js +6 -50
- package/fontes/construtos/definir-valor.js.map +1 -1
- package/fontes/construtos/dicionario.js +6 -50
- package/fontes/construtos/dicionario.js.map +1 -1
- package/fontes/construtos/funcao.d.ts +2 -2
- package/fontes/construtos/funcao.js +6 -47
- package/fontes/construtos/funcao.js.map +1 -1
- package/fontes/construtos/isto.js +6 -47
- package/fontes/construtos/isto.js.map +1 -1
- package/fontes/construtos/literal.js +6 -47
- package/fontes/construtos/literal.js.map +1 -1
- package/fontes/construtos/logico.js +6 -50
- package/fontes/construtos/logico.js.map +1 -1
- package/fontes/construtos/super.js +6 -47
- package/fontes/construtos/super.js.map +1 -1
- package/fontes/construtos/unario.js +6 -50
- package/fontes/construtos/unario.js.map +1 -1
- package/fontes/construtos/variavel.js +6 -47
- package/fontes/construtos/variavel.js.map +1 -1
- package/fontes/construtos/vetor.js +6 -50
- package/fontes/construtos/vetor.js.map +1 -1
- package/fontes/declaracoes/bloco.js +9 -70
- package/fontes/declaracoes/bloco.js.map +1 -1
- package/fontes/declaracoes/classe.js +11 -72
- package/fontes/declaracoes/classe.js.map +1 -1
- package/fontes/declaracoes/continua.js +8 -65
- package/fontes/declaracoes/continua.js.map +1 -1
- package/fontes/declaracoes/declaracao.js +6 -47
- package/fontes/declaracoes/declaracao.js.map +1 -1
- package/fontes/declaracoes/enquanto.js +10 -71
- package/fontes/declaracoes/enquanto.js.map +1 -1
- package/fontes/declaracoes/escolha.js +11 -72
- package/fontes/declaracoes/escolha.js.map +1 -1
- package/fontes/declaracoes/escreva.js +9 -70
- package/fontes/declaracoes/escreva.js.map +1 -1
- package/fontes/declaracoes/expressao.js +9 -70
- package/fontes/declaracoes/expressao.js.map +1 -1
- package/fontes/declaracoes/fazer.js +10 -71
- package/fontes/declaracoes/fazer.js.map +1 -1
- package/fontes/declaracoes/funcao.js +10 -68
- package/fontes/declaracoes/funcao.js.map +1 -1
- package/fontes/declaracoes/importar.js +10 -71
- package/fontes/declaracoes/importar.js.map +1 -1
- package/fontes/declaracoes/leia.js +9 -70
- package/fontes/declaracoes/leia.js.map +1 -1
- package/fontes/declaracoes/para.js +12 -73
- package/fontes/declaracoes/para.js.map +1 -1
- package/fontes/declaracoes/retorna.js +10 -71
- package/fontes/declaracoes/retorna.js.map +1 -1
- package/fontes/declaracoes/se.js +12 -73
- package/fontes/declaracoes/se.js.map +1 -1
- package/fontes/declaracoes/sustar.js +8 -65
- package/fontes/declaracoes/sustar.js.map +1 -1
- package/fontes/declaracoes/tente.js +12 -73
- package/fontes/declaracoes/tente.js.map +1 -1
- package/fontes/declaracoes/var.js +10 -71
- package/fontes/declaracoes/var.js.map +1 -1
- package/fontes/delegua.js +117 -200
- package/fontes/delegua.js.map +1 -1
- package/fontes/depuracao/cyrb53.js +3 -4
- package/fontes/depuracao/cyrb53.js.map +1 -1
- package/fontes/depuracao/servidor-depuracao.js +125 -209
- package/fontes/depuracao/servidor-depuracao.js.map +1 -1
- package/fontes/espaco-variaveis.js +3 -4
- package/fontes/espaco-variaveis.js.map +1 -1
- package/fontes/estruturas/chamavel.js +6 -9
- package/fontes/estruturas/chamavel.js.map +1 -1
- package/fontes/estruturas/classe-padrao.js +17 -35
- package/fontes/estruturas/classe-padrao.js.map +1 -1
- package/fontes/estruturas/delegua-classe.d.ts +2 -2
- package/fontes/estruturas/delegua-classe.js +21 -39
- package/fontes/estruturas/delegua-classe.js.map +1 -1
- package/fontes/estruturas/delegua-funcao.js +48 -114
- package/fontes/estruturas/delegua-funcao.js.map +1 -1
- package/fontes/estruturas/funcao-padrao.js +13 -75
- package/fontes/estruturas/funcao-padrao.js.map +1 -1
- package/fontes/estruturas/metodo-primitiva.js +11 -39
- package/fontes/estruturas/metodo-primitiva.js.map +1 -1
- package/fontes/estruturas/modulo.js +6 -7
- package/fontes/estruturas/modulo.js.map +1 -1
- package/fontes/estruturas/objeto-delegua-classe.d.ts +3 -3
- package/fontes/estruturas/objeto-delegua-classe.js +12 -13
- package/fontes/estruturas/objeto-delegua-classe.js.map +1 -1
- package/fontes/estruturas/objeto-padrao.js +9 -11
- package/fontes/estruturas/objeto-padrao.js.map +1 -1
- package/fontes/excecoes/erro-em-tempo-de-execucao.js +8 -26
- package/fontes/excecoes/erro-em-tempo-de-execucao.js.map +1 -1
- package/fontes/importador/importador.js +21 -22
- package/fontes/importador/importador.js.map +1 -1
- package/fontes/interfaces/parametro-interface.d.ts +1 -1
- package/fontes/interpretador/dialetos/egua-classico.js +592 -1019
- package/fontes/interpretador/dialetos/egua-classico.js.map +1 -1
- package/fontes/interpretador/inferenciador.js +1 -1
- package/fontes/interpretador/inferenciador.js.map +1 -1
- package/fontes/interpretador/interpretador-com-depuracao.js +186 -336
- package/fontes/interpretador/interpretador-com-depuracao.js.map +1 -1
- package/fontes/interpretador/interpretador.js +706 -1175
- package/fontes/interpretador/interpretador.js.map +1 -1
- package/fontes/interpretador/pilha-escopos-execucao.js +52 -57
- package/fontes/interpretador/pilha-escopos-execucao.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-birl.d.ts +1 -0
- package/fontes/lexador/dialetos/lexador-birl.js +55 -64
- package/fontes/lexador/dialetos/lexador-birl.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-egua-classico.js +43 -46
- package/fontes/lexador/dialetos/lexador-egua-classico.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-eguap.js +59 -63
- package/fontes/lexador/dialetos/lexador-eguap.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-visualg.js +45 -54
- package/fontes/lexador/dialetos/lexador-visualg.js.map +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/birl.js +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/birl.js.map +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.js +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/egua-classico.js.map +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.d.ts +24 -0
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js +25 -1
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js.map +1 -1
- package/fontes/lexador/lexador-base-linha-unica.js +28 -29
- package/fontes/lexador/lexador-base-linha-unica.js.map +1 -1
- package/fontes/lexador/lexador.js +53 -57
- package/fontes/lexador/lexador.js.map +1 -1
- package/fontes/lexador/palavras-reservadas.js +1 -1
- package/fontes/lexador/palavras-reservadas.js.map +1 -1
- package/fontes/lexador/simbolo.js +5 -6
- package/fontes/lexador/simbolo.js.map +1 -1
- package/fontes/quebras/index.js +11 -42
- package/fontes/quebras/index.js.map +1 -1
- package/fontes/resolvedor/dialetos/egua-classico.js +143 -144
- package/fontes/resolvedor/dialetos/egua-classico.js.map +1 -1
- package/fontes/resolvedor/erro-resolvedor.js +6 -24
- package/fontes/resolvedor/erro-resolvedor.js.map +1 -1
- package/fontes/resolvedor/pilha-escopos.js +11 -12
- package/fontes/resolvedor/pilha-escopos.js.map +1 -1
- package/fontes/tipos-de-simbolos/birl.d.ts +1 -0
- package/fontes/tipos-de-simbolos/birl.js +1 -0
- package/fontes/tipos-de-simbolos/birl.js.map +1 -1
- package/fontes/tipos-de-simbolos/comum.d.ts +2 -0
- package/fontes/tipos-de-simbolos/comum.js +2 -0
- package/fontes/tipos-de-simbolos/comum.js.map +1 -1
- package/fontes/tipos-de-simbolos/visualg.d.ts +9 -0
- package/fontes/tipos-de-simbolos/visualg.js +9 -0
- package/fontes/tipos-de-simbolos/visualg.js.map +1 -1
- package/index.d.ts +4 -0
- package/index.js +4 -26
- package/index.js.map +1 -1
- package/jest.config.js +9 -47
- package/jest.config.js.map +1 -1
- package/package.json +7 -5
- package/testes/__mocks__/estatistica.js +1 -1
- package/testes/__mocks__/estatistica.js.map +1 -1
- package/testes/__mocks__/fisica.js +1 -1
- package/testes/__mocks__/fisica.js.map +1 -1
- package/testes/__mocks__/matematica.js +1 -1
- package/testes/__mocks__/matematica.js.map +1 -1
- package/testes/avaliador-sintatico.test.js +27 -27
- package/testes/avaliador-sintatico.test.js.map +1 -1
- package/testes/biblioteca-global.test.js +197 -440
- package/testes/biblioteca-global.test.js.map +1 -1
- package/testes/birl/avaliador-sintatico.test.js +8 -8
- package/testes/birl/avaliador-sintatico.test.js.map +1 -1
- package/testes/birl/lexador.test.js +10 -10
- package/testes/birl/lexador.test.js.map +1 -1
- package/testes/delegua.test.js +7 -7
- package/testes/delegua.test.js.map +1 -1
- package/testes/egua-classico/avaliador-sintatico.test.js +14 -14
- package/testes/egua-classico/avaliador-sintatico.test.js.map +1 -1
- package/testes/egua-classico/delegua.test.js +5 -5
- package/testes/egua-classico/delegua.test.js.map +1 -1
- package/testes/egua-classico/interpretador.test.js +180 -396
- package/testes/egua-classico/interpretador.test.js.map +1 -1
- package/testes/egua-classico/lexador.test.js +23 -23
- package/testes/egua-classico/lexador.test.js.map +1 -1
- package/testes/egua-classico/resolvedor.test.js +12 -12
- package/testes/egua-classico/resolvedor.test.js.map +1 -1
- package/testes/eguap/avaliador-sintatico.test.js +11 -11
- package/testes/eguap/avaliador-sintatico.test.js.map +1 -1
- package/testes/eguap/interpretador.test.js +189 -405
- package/testes/eguap/interpretador.test.js.map +1 -1
- package/testes/eguap/lexador.test.js +18 -18
- package/testes/eguap/lexador.test.js.map +1 -1
- package/testes/interpretador.test.js +431 -908
- package/testes/interpretador.test.js.map +1 -1
- package/testes/lexador.test.js +42 -42
- package/testes/lexador.test.js.map +1 -1
- package/testes/visualg/avaliador-sintatico.test.js +23 -23
- package/testes/visualg/avaliador-sintatico.test.js.map +1 -1
- package/testes/visualg/interpretador.test.js +16 -61
- package/testes/visualg/interpretador.test.js.map +1 -1
- package/testes/visualg/lexador.test.js +15 -15
- package/testes/visualg/lexador.test.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpretador.js","sourceRoot":"","sources":["../../../fontes/interpretador/interpretador.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interpretador.js","sourceRoot":"","sources":["../../../fontes/interpretador/interpretador.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,115 +1,110 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PilhaEscoposExecucao = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const estruturas_1 = require("../estruturas");
|
|
5
|
+
const excecoes_1 = require("../excecoes");
|
|
6
|
+
const lexador_1 = require("../lexador");
|
|
7
|
+
const inferenciador_1 = require("./inferenciador");
|
|
8
|
+
class PilhaEscoposExecucao {
|
|
9
|
+
constructor() {
|
|
10
10
|
this.pilha = [];
|
|
11
11
|
}
|
|
12
|
-
|
|
12
|
+
empilhar(item) {
|
|
13
13
|
this.pilha.push(item);
|
|
14
|
-
}
|
|
15
|
-
|
|
14
|
+
}
|
|
15
|
+
eVazio() {
|
|
16
16
|
return this.pilha.length === 0;
|
|
17
|
-
}
|
|
18
|
-
|
|
17
|
+
}
|
|
18
|
+
elementos() {
|
|
19
19
|
return this.pilha.length;
|
|
20
|
-
}
|
|
21
|
-
|
|
20
|
+
}
|
|
21
|
+
naPosicao(posicao) {
|
|
22
22
|
return this.pilha[posicao];
|
|
23
|
-
}
|
|
24
|
-
|
|
23
|
+
}
|
|
24
|
+
topoDaPilha() {
|
|
25
25
|
if (this.eVazio())
|
|
26
26
|
throw new Error('Pilha vazia.');
|
|
27
27
|
return this.pilha[this.pilha.length - 1];
|
|
28
|
-
}
|
|
29
|
-
|
|
28
|
+
}
|
|
29
|
+
removerUltimo() {
|
|
30
30
|
if (this.eVazio())
|
|
31
31
|
throw new Error('Pilha vazia.');
|
|
32
32
|
return this.pilha.pop();
|
|
33
|
-
}
|
|
34
|
-
|
|
33
|
+
}
|
|
34
|
+
definirVariavel(nomeVariavel, valor) {
|
|
35
35
|
this.pilha[this.pilha.length - 1].ambiente.valores[nomeVariavel] = {
|
|
36
|
-
valor
|
|
36
|
+
valor,
|
|
37
37
|
tipo: (0, inferenciador_1.inferirTipoVariavel)(valor),
|
|
38
38
|
};
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
}
|
|
40
|
+
atribuirVariavelEm(distancia, simbolo, valor) {
|
|
41
|
+
const ambienteAncestral = this.pilha[this.pilha.length - distancia].ambiente;
|
|
42
42
|
ambienteAncestral.valores[simbolo.lexema] = {
|
|
43
|
-
valor
|
|
43
|
+
valor,
|
|
44
44
|
tipo: (0, inferenciador_1.inferirTipoVariavel)(valor),
|
|
45
45
|
};
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
for (
|
|
49
|
-
|
|
46
|
+
}
|
|
47
|
+
atribuirVariavel(simbolo, valor) {
|
|
48
|
+
for (let i = 1; i <= this.pilha.length; i++) {
|
|
49
|
+
const ambiente = this.pilha[this.pilha.length - i].ambiente;
|
|
50
50
|
if (ambiente.valores[simbolo.lexema] !== undefined) {
|
|
51
51
|
ambiente.valores[simbolo.lexema] = {
|
|
52
|
-
valor
|
|
52
|
+
valor,
|
|
53
53
|
tipo: (0, inferenciador_1.inferirTipoVariavel)(valor),
|
|
54
54
|
};
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
throw new excecoes_1.ErroEmTempoDeExecucao(simbolo, "Variável não definida '" + simbolo.lexema + "'.");
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
}
|
|
60
|
+
obterVariavelEm(distancia, nome) {
|
|
61
|
+
const ambienteAncestral = this.pilha[this.pilha.length - distancia].ambiente;
|
|
62
62
|
return ambienteAncestral.valores[nome];
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
for (
|
|
66
|
-
|
|
63
|
+
}
|
|
64
|
+
obterVariavel(simbolo) {
|
|
65
|
+
for (let i = 1; i <= this.pilha.length; i++) {
|
|
66
|
+
const ambiente = this.pilha[this.pilha.length - i].ambiente;
|
|
67
67
|
if (ambiente.valores[simbolo.lexema] !== undefined) {
|
|
68
68
|
return ambiente.valores[simbolo.lexema];
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
throw new excecoes_1.ErroEmTempoDeExecucao(simbolo, "Variável não definida: '" + simbolo.lexema + "'.");
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
for (
|
|
75
|
-
|
|
72
|
+
}
|
|
73
|
+
obterVariavelPorNome(nome) {
|
|
74
|
+
for (let i = 1; i <= this.pilha.length; i++) {
|
|
75
|
+
const ambiente = this.pilha[this.pilha.length - i].ambiente;
|
|
76
76
|
if (ambiente.valores[nome] !== undefined) {
|
|
77
77
|
return ambiente.valores[nome];
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
throw new excecoes_1.ErroEmTempoDeExecucao(new lexador_1.Simbolo('especial', nome, nome, -1, -1), "Variável não definida: '" + nome + "'.");
|
|
81
|
-
}
|
|
81
|
+
}
|
|
82
82
|
/**
|
|
83
83
|
* Método usado pelo depurador para obter todas as variáveis definidas.
|
|
84
84
|
*/
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
var ambiente = this.pilha[this.pilha.length - i].ambiente;
|
|
85
|
+
obterTodasVariaveis(todasVariaveis = []) {
|
|
86
|
+
for (let i = 1; i <= this.pilha.length; i++) {
|
|
87
|
+
const ambiente = this.pilha[this.pilha.length - i].ambiente;
|
|
89
88
|
// TODO: Testar se isso faz sentido.
|
|
90
|
-
|
|
91
|
-
return ({ valor: valor, tipo: 'texto' });
|
|
92
|
-
});
|
|
89
|
+
const vetorObjeto = Object.entries(ambiente).map((chave, valor) => ({ valor: valor, tipo: 'texto' }));
|
|
93
90
|
todasVariaveis.concat(vetorObjeto);
|
|
94
91
|
}
|
|
95
92
|
return todasVariaveis;
|
|
96
|
-
}
|
|
93
|
+
}
|
|
97
94
|
/**
|
|
98
95
|
* Obtém todas as funções declaradas ou por código-fonte, ou pelo desenvolvedor
|
|
99
96
|
* em console.
|
|
100
97
|
*/
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
for (
|
|
105
|
-
var _b = _a[_i], nome = _b[0], corpo = _b[1];
|
|
98
|
+
obterTodasDeleguaFuncao() {
|
|
99
|
+
const retorno = {};
|
|
100
|
+
const ambiente = this.pilha[this.pilha.length - 1].ambiente;
|
|
101
|
+
for (const [nome, corpo] of Object.entries(ambiente.valores)) {
|
|
106
102
|
if (corpo instanceof estruturas_1.DeleguaFuncao) {
|
|
107
103
|
retorno[nome] = corpo;
|
|
108
104
|
}
|
|
109
105
|
}
|
|
110
106
|
return retorno;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
}());
|
|
107
|
+
}
|
|
108
|
+
}
|
|
114
109
|
exports.PilhaEscoposExecucao = PilhaEscoposExecucao;
|
|
115
110
|
//# sourceMappingURL=pilha-escopos-execucao.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pilha-escopos-execucao.js","sourceRoot":"","sources":["../../../fontes/interpretador/pilha-escopos-execucao.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"pilha-escopos-execucao.js","sourceRoot":"","sources":["../../../fontes/interpretador/pilha-escopos-execucao.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { RetornoLexador } from '../../interfaces/retornos';
|
|
2
2
|
import { LexadorBaseLinhaUnica } from '../lexador-base-linha-unica';
|
|
3
3
|
export declare class LexadorBirl extends LexadorBaseLinhaUnica {
|
|
4
|
+
adicionarSimbolo(tipo: string, lexema?: string, literal?: any): void;
|
|
4
5
|
proximoIgualA(esperado: string): boolean;
|
|
5
6
|
analisarTexto(delimitador: string): void;
|
|
6
7
|
analisarNumero(): void;
|
|
@@ -1,41 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
18
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
19
|
-
if (ar || !(i in from)) {
|
|
20
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
21
|
-
ar[i] = from[i];
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
25
|
-
};
|
|
26
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
27
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
28
4
|
};
|
|
29
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
6
|
exports.LexadorBirl = void 0;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
7
|
+
const birl_1 = __importDefault(require("../../tipos-de-simbolos/birl"));
|
|
8
|
+
const lexador_base_linha_unica_1 = require("../lexador-base-linha-unica");
|
|
9
|
+
const simbolo_1 = require("../simbolo");
|
|
10
|
+
class LexadorBirl extends lexador_base_linha_unica_1.LexadorBaseLinhaUnica {
|
|
11
|
+
adicionarSimbolo(tipo, lexema = '', literal = null) {
|
|
12
|
+
this.simbolos.push(new simbolo_1.Simbolo(tipo, lexema, literal, this.linha, -1));
|
|
37
13
|
}
|
|
38
|
-
|
|
14
|
+
proximoIgualA(esperado) {
|
|
39
15
|
if (this.eFinalDoCodigo()) {
|
|
40
16
|
return false;
|
|
41
17
|
}
|
|
@@ -44,8 +20,8 @@ var LexadorBirl = /** @class */ (function (_super) {
|
|
|
44
20
|
}
|
|
45
21
|
this.atual += 1;
|
|
46
22
|
return true;
|
|
47
|
-
}
|
|
48
|
-
|
|
23
|
+
}
|
|
24
|
+
analisarTexto(delimitador) {
|
|
49
25
|
while (this.simboloAtual() !== delimitador && !this.eFinalDoCodigo()) {
|
|
50
26
|
this.avancar();
|
|
51
27
|
}
|
|
@@ -57,10 +33,10 @@ var LexadorBirl = /** @class */ (function (_super) {
|
|
|
57
33
|
});
|
|
58
34
|
return;
|
|
59
35
|
}
|
|
60
|
-
|
|
61
|
-
this.adicionarSimbolo(birl_1.default.TEXTO, valor);
|
|
62
|
-
}
|
|
63
|
-
|
|
36
|
+
const valor = this.codigo.substring(this.inicioSimbolo + 1, this.atual);
|
|
37
|
+
this.adicionarSimbolo(birl_1.default.TEXTO, valor, valor);
|
|
38
|
+
}
|
|
39
|
+
analisarNumero() {
|
|
64
40
|
while (this.eDigito(this.simboloAtual())) {
|
|
65
41
|
this.avancar();
|
|
66
42
|
}
|
|
@@ -70,15 +46,15 @@ var LexadorBirl = /** @class */ (function (_super) {
|
|
|
70
46
|
this.avancar();
|
|
71
47
|
}
|
|
72
48
|
}
|
|
73
|
-
|
|
74
|
-
this.adicionarSimbolo(birl_1.default.NUMERO, parseFloat(numeroCompleto));
|
|
75
|
-
}
|
|
76
|
-
|
|
49
|
+
const numeroCompleto = this.codigo.substring(this.inicioSimbolo, this.atual);
|
|
50
|
+
this.adicionarSimbolo(birl_1.default.NUMERO, numeroCompleto, parseFloat(numeroCompleto));
|
|
51
|
+
}
|
|
52
|
+
identificarPalavraChave() {
|
|
77
53
|
while (this.simboloAtual() !== '\n' && this.simboloAtual() !== '?') {
|
|
78
54
|
this.avancar();
|
|
79
55
|
}
|
|
80
|
-
|
|
81
|
-
|
|
56
|
+
const proximo = this.simboloAtual();
|
|
57
|
+
const valor = proximo !== '?'
|
|
82
58
|
? this.codigo.substring(this.inicioSimbolo, this.atual - 1).trim()
|
|
83
59
|
: this.codigo.substring(this.inicioSimbolo, this.atual + 1).trim();
|
|
84
60
|
switch (valor) {
|
|
@@ -97,24 +73,38 @@ var LexadorBirl = /** @class */ (function (_super) {
|
|
|
97
73
|
case 'BORA CUMPADE?':
|
|
98
74
|
this.adicionarSimbolo(birl_1.default.BORA_CUMPADE);
|
|
99
75
|
this.avancar();
|
|
76
|
+
break;
|
|
77
|
+
case 'QUE QUE CE QUER MONSTRAO?':
|
|
78
|
+
this.adicionarSimbolo(birl_1.default.QUE_QUE_CE_QUER_MONSTRAO);
|
|
79
|
+
this.avancar();
|
|
80
|
+
break;
|
|
81
|
+
case 'ELE QUE A GENTE QUER?':
|
|
82
|
+
this.adicionarSimbolo(birl_1.default.ELE_QUE_A_GENTE_QUER);
|
|
83
|
+
this.avancar();
|
|
84
|
+
break;
|
|
85
|
+
case 'NAO VAI DAR NAO':
|
|
86
|
+
this.adicionarSimbolo(birl_1.default.NAO_VAI_DAR_NAO);
|
|
87
|
+
this.avancar();
|
|
88
|
+
break;
|
|
100
89
|
default:
|
|
101
90
|
this.avancar();
|
|
102
91
|
break;
|
|
103
92
|
}
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
|
|
93
|
+
}
|
|
94
|
+
analisarToken() {
|
|
95
|
+
const caractere = this.simboloAtual();
|
|
107
96
|
switch (caractere) {
|
|
108
97
|
case '(':
|
|
109
|
-
this.adicionarSimbolo(birl_1.default.PARENTESE_ESQUERDO);
|
|
98
|
+
this.adicionarSimbolo(birl_1.default.PARENTESE_ESQUERDO, '(', null);
|
|
110
99
|
this.avancar();
|
|
111
100
|
break;
|
|
112
101
|
case ')':
|
|
113
|
-
this.adicionarSimbolo(birl_1.default.PARENTESE_DIREITO);
|
|
102
|
+
this.adicionarSimbolo(birl_1.default.PARENTESE_DIREITO, ')', null);
|
|
114
103
|
this.avancar();
|
|
115
104
|
break;
|
|
116
105
|
case '=':
|
|
117
|
-
this.
|
|
106
|
+
const bool = this.proximoIgualA('=') ? true : false;
|
|
107
|
+
this.adicionarSimbolo(bool ? birl_1.default.IGUAL_IGUAL : birl_1.default.IGUAL, bool ? '==' : '=', null);
|
|
118
108
|
this.avancar();
|
|
119
109
|
break;
|
|
120
110
|
case "'":
|
|
@@ -127,11 +117,14 @@ var LexadorBirl = /** @class */ (function (_super) {
|
|
|
127
117
|
this.avancar();
|
|
128
118
|
break;
|
|
129
119
|
case ';':
|
|
130
|
-
this.adicionarSimbolo(birl_1.default.PONTO_E_VIRGULA);
|
|
120
|
+
this.adicionarSimbolo(birl_1.default.PONTO_E_VIRGULA, ';', null);
|
|
131
121
|
this.avancar();
|
|
132
122
|
break;
|
|
133
|
-
case ' ':
|
|
134
123
|
case '\0':
|
|
124
|
+
this.adicionarSimbolo(birl_1.default.QUEBRA_LINHA, '\0', null);
|
|
125
|
+
this.avancar();
|
|
126
|
+
break;
|
|
127
|
+
case ' ':
|
|
135
128
|
case '\r':
|
|
136
129
|
case '\t':
|
|
137
130
|
case '\n':
|
|
@@ -151,13 +144,13 @@ var LexadorBirl = /** @class */ (function (_super) {
|
|
|
151
144
|
});
|
|
152
145
|
this.avancar();
|
|
153
146
|
}
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
for (
|
|
147
|
+
}
|
|
148
|
+
InjetaUmItemDentroDaLista(item, posicao) {
|
|
149
|
+
let codigoComeco;
|
|
150
|
+
let codigoPosPosição;
|
|
151
|
+
for (let i in this.codigo) {
|
|
159
152
|
if (Number(i) === posicao) {
|
|
160
|
-
|
|
153
|
+
let iterador = Number(i);
|
|
161
154
|
while (iterador <= this.codigo.length) {
|
|
162
155
|
codigoPosPosição.push(this.codigo[iterador]);
|
|
163
156
|
iterador += 1;
|
|
@@ -166,10 +159,9 @@ var LexadorBirl = /** @class */ (function (_super) {
|
|
|
166
159
|
}
|
|
167
160
|
codigoComeco.push(this.codigo[i]);
|
|
168
161
|
}
|
|
169
|
-
return
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
if (hashArquivo === void 0) { hashArquivo = -1; }
|
|
162
|
+
return [...codigoComeco, ...codigoPosPosição];
|
|
163
|
+
}
|
|
164
|
+
mapear(codigo, hashArquivo = -1) {
|
|
173
165
|
this.erros = [];
|
|
174
166
|
this.simbolos = [];
|
|
175
167
|
this.inicioSimbolo = 0;
|
|
@@ -185,8 +177,7 @@ var LexadorBirl = /** @class */ (function (_super) {
|
|
|
185
177
|
simbolos: this.simbolos,
|
|
186
178
|
erros: this.erros,
|
|
187
179
|
};
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
}(lexador_base_linha_unica_1.LexadorBaseLinhaUnica));
|
|
180
|
+
}
|
|
181
|
+
}
|
|
191
182
|
exports.LexadorBirl = LexadorBirl;
|
|
192
183
|
//# sourceMappingURL=lexador-birl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lexador-birl.js","sourceRoot":"","sources":["../../../../fontes/lexador/dialetos/lexador-birl.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lexador-birl.js","sourceRoot":"","sources":["../../../../fontes/lexador/dialetos/lexador-birl.ts"],"names":[],"mappings":"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"}
|