@designliquido/delegua 0.7.6 → 0.8.1
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/bin/package.json +78 -65
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.d.ts +63 -0
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js +180 -0
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -0
- package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +5 -4
- package/fontes/avaliador-sintatico/avaliador-sintatico.js +189 -188
- package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.d.ts +34 -32
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +154 -148
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.d.ts +13 -12
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +144 -142
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +48 -0
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +297 -0
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -0
- package/fontes/avaliador-sintatico/erro-avaliador-sintatico.d.ts +1 -1
- package/fontes/avaliador-sintatico/retornos/index.d.ts +3 -0
- package/fontes/avaliador-sintatico/retornos/index.js +20 -0
- package/fontes/avaliador-sintatico/retornos/index.js.map +1 -0
- package/fontes/avaliador-sintatico/retornos/retorno-declaracao.d.ts +3 -0
- package/fontes/avaliador-sintatico/retornos/retorno-declaracao.js +3 -0
- package/fontes/avaliador-sintatico/retornos/retorno-declaracao.js.map +1 -0
- package/fontes/avaliador-sintatico/retornos/retorno-primario.d.ts +3 -0
- package/fontes/avaliador-sintatico/retornos/retorno-primario.js +3 -0
- package/fontes/avaliador-sintatico/retornos/retorno-primario.js.map +1 -0
- package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.d.ts +2 -0
- package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.js +3 -0
- package/fontes/avaliador-sintatico/retornos/retorno-resolver-declaracao.js.map +1 -0
- package/fontes/bibliotecas/biblioteca-global.d.ts +2 -2
- package/fontes/bibliotecas/biblioteca-global.js +112 -57
- package/fontes/bibliotecas/biblioteca-global.js.map +1 -1
- package/fontes/bibliotecas/importar-biblioteca.d.ts +1 -1
- package/fontes/bibliotecas/importar-biblioteca.js +13 -14
- package/fontes/bibliotecas/importar-biblioteca.js.map +1 -1
- package/fontes/bibliotecas/primitivas-texto.js +13 -7
- package/fontes/bibliotecas/primitivas-texto.js.map +1 -1
- package/fontes/bibliotecas/primitivas-vetor.js +25 -11
- package/fontes/bibliotecas/primitivas-vetor.js.map +1 -1
- package/fontes/construtos/acesso-indice-variavel.d.ts +2 -2
- package/fontes/construtos/acesso-indice-variavel.js.map +1 -1
- package/fontes/construtos/acesso-metodo.d.ts +2 -2
- package/fontes/construtos/acesso-metodo.js.map +1 -1
- package/fontes/construtos/agrupamento.d.ts +2 -2
- package/fontes/construtos/atribuicao-sobrescrita.d.ts +1 -1
- package/fontes/construtos/atribuicao-sobrescrita.js.map +1 -1
- package/fontes/construtos/atribuir.d.ts +2 -2
- package/fontes/construtos/atribuir.js.map +1 -1
- package/fontes/construtos/binario.d.ts +2 -2
- package/fontes/construtos/binario.js.map +1 -1
- package/fontes/construtos/chamada.d.ts +2 -2
- package/fontes/construtos/chamada.js.map +1 -1
- package/fontes/construtos/conjunto.d.ts +1 -1
- package/fontes/construtos/conjunto.js.map +1 -1
- package/fontes/construtos/construto.d.ts +1 -0
- package/fontes/construtos/dicionario.d.ts +1 -1
- package/fontes/construtos/dicionario.js.map +1 -1
- package/fontes/construtos/funcao.d.ts +2 -2
- package/fontes/construtos/funcao.js.map +1 -1
- package/fontes/construtos/index.d.ts +18 -18
- package/fontes/construtos/isto.d.ts +1 -1
- package/fontes/construtos/isto.js.map +1 -1
- package/fontes/construtos/literal.d.ts +5 -4
- package/fontes/construtos/literal.js.map +1 -1
- package/fontes/construtos/logico.d.ts +1 -1
- package/fontes/construtos/logico.js.map +1 -1
- package/fontes/construtos/super.d.ts +4 -4
- package/fontes/construtos/super.js.map +1 -1
- package/fontes/construtos/unario.d.ts +1 -1
- package/fontes/construtos/unario.js.map +1 -1
- package/fontes/construtos/variavel.d.ts +2 -2
- package/fontes/construtos/variavel.js.map +1 -1
- package/fontes/construtos/vetor.d.ts +3 -3
- package/fontes/construtos/vetor.js.map +1 -1
- package/fontes/declaracoes/bloco.d.ts +4 -4
- package/fontes/declaracoes/bloco.js.map +1 -1
- package/fontes/declaracoes/classe.d.ts +2 -2
- package/fontes/declaracoes/classe.js.map +1 -1
- package/fontes/declaracoes/continua.d.ts +2 -2
- package/fontes/declaracoes/continua.js.map +1 -1
- package/fontes/declaracoes/declaracao.js +2 -2
- package/fontes/declaracoes/declaracao.js.map +1 -1
- package/fontes/declaracoes/enquanto.d.ts +2 -2
- package/fontes/declaracoes/enquanto.js.map +1 -1
- package/fontes/declaracoes/escolha.d.ts +7 -4
- package/fontes/declaracoes/escolha.js +6 -3
- package/fontes/declaracoes/escolha.js.map +1 -1
- package/fontes/declaracoes/escreva.d.ts +3 -3
- package/fontes/declaracoes/escreva.js.map +1 -1
- package/fontes/declaracoes/expressao.d.ts +3 -3
- package/fontes/declaracoes/expressao.js.map +1 -1
- package/fontes/declaracoes/fazer.d.ts +1 -1
- package/fontes/declaracoes/fazer.js.map +1 -1
- package/fontes/declaracoes/funcao.d.ts +2 -2
- package/fontes/declaracoes/funcao.js.map +1 -1
- package/fontes/declaracoes/importar.d.ts +2 -2
- package/fontes/declaracoes/importar.js.map +1 -1
- package/fontes/declaracoes/index.d.ts +1 -0
- package/fontes/declaracoes/index.js +1 -0
- package/fontes/declaracoes/index.js.map +1 -1
- package/fontes/declaracoes/leia.d.ts +12 -0
- package/fontes/declaracoes/leia.js +37 -0
- package/fontes/declaracoes/leia.js.map +1 -0
- package/fontes/declaracoes/para.d.ts +1 -1
- package/fontes/declaracoes/para.js.map +1 -1
- package/fontes/declaracoes/retorna.d.ts +2 -2
- package/fontes/declaracoes/retorna.js.map +1 -1
- package/fontes/declaracoes/se.d.ts +2 -2
- package/fontes/declaracoes/se.js.map +1 -1
- package/fontes/declaracoes/sustar.d.ts +2 -2
- package/fontes/declaracoes/sustar.js.map +1 -1
- package/fontes/declaracoes/tente.d.ts +2 -2
- package/fontes/declaracoes/tente.js.map +1 -1
- package/fontes/declaracoes/var.d.ts +5 -4
- package/fontes/declaracoes/var.js.map +1 -1
- package/fontes/delegua.d.ts +3 -3
- package/fontes/delegua.js +38 -22
- package/fontes/delegua.js.map +1 -1
- package/fontes/depuracao/cyrb53.js +6 -3
- package/fontes/depuracao/cyrb53.js.map +1 -1
- package/fontes/depuracao/servidor-depuracao.js +84 -46
- package/fontes/depuracao/servidor-depuracao.js.map +1 -1
- package/fontes/espaco-variaveis.d.ts +1 -1
- package/fontes/espaco-variaveis.js +0 -1
- package/fontes/espaco-variaveis.js.map +1 -1
- package/fontes/estruturas/chamavel.js +1 -1
- package/fontes/estruturas/classe-padrao.d.ts +1 -1
- package/fontes/estruturas/classe-padrao.js.map +1 -1
- package/fontes/estruturas/delegua-classe.d.ts +4 -4
- package/fontes/estruturas/delegua-classe.js +5 -3
- package/fontes/estruturas/delegua-classe.js.map +1 -1
- package/fontes/estruturas/funcao-padrao.d.ts +1 -1
- package/fontes/estruturas/funcao-padrao.js +1 -1
- package/fontes/estruturas/funcao.d.ts +4 -4
- package/fontes/estruturas/funcao.js +9 -4
- package/fontes/estruturas/funcao.js.map +1 -1
- package/fontes/estruturas/index.d.ts +9 -9
- package/fontes/estruturas/metodo-primitiva.d.ts +1 -1
- package/fontes/estruturas/modulo.d.ts +1 -1
- package/fontes/estruturas/modulo.js +1 -1
- package/fontes/estruturas/objeto-delegua-classe.d.ts +2 -2
- package/fontes/estruturas/objeto-delegua-classe.js +2 -2
- package/fontes/estruturas/objeto-delegua-classe.js.map +1 -1
- package/fontes/estruturas/objeto-padrao.js.map +1 -1
- package/fontes/excecoes/erro-em-tempo-de-execucao.d.ts +1 -1
- package/fontes/excecoes/erro-em-tempo-de-execucao.js.map +1 -1
- package/fontes/excecoes/index.d.ts +1 -1
- package/fontes/importador/importador.d.ts +1 -1
- package/fontes/importador/importador.js +3 -2
- package/fontes/importador/importador.js.map +1 -1
- package/fontes/importador/retorno-importador.d.ts +2 -2
- package/fontes/interfaces/avaliador-sintatico-interface.d.ts +3 -5
- package/fontes/interfaces/delegua-interface.d.ts +2 -2
- package/fontes/interfaces/escopo-execucao.d.ts +2 -2
- package/fontes/interfaces/importador-interface.d.ts +1 -1
- package/fontes/interfaces/interpretador-com-depuracao-interface.d.ts +3 -3
- package/fontes/interfaces/interpretador-interface.d.ts +8 -7
- package/fontes/interfaces/lexador-interface.d.ts +4 -4
- package/fontes/interfaces/parametro-interface.d.ts +1 -1
- package/fontes/interfaces/pilha-escopos-execucao-interface.d.ts +5 -5
- package/fontes/interfaces/resolvedor-interface.d.ts +5 -5
- package/fontes/interfaces/retornos/retorno-avaliador-sintatico.d.ts +2 -2
- package/fontes/interfaces/retornos/retorno-execucao-interface.d.ts +1 -1
- package/fontes/interfaces/retornos/retorno-interpretador.d.ts +1 -1
- package/fontes/interfaces/retornos/retorno-lexador.d.ts +3 -3
- package/fontes/interfaces/variavel-interface.d.ts +1 -1
- package/fontes/interpretador/dialetos/egua-classico.d.ts +2 -1
- package/fontes/interpretador/dialetos/egua-classico.js +75 -47
- package/fontes/interpretador/dialetos/egua-classico.js.map +1 -1
- package/fontes/interpretador/dialetos/index.js.map +1 -1
- package/fontes/interpretador/erro-interpretador.d.ts +1 -1
- package/fontes/interpretador/inferenciador.js.map +1 -1
- package/fontes/interpretador/interpretador-com-depuracao.js +5 -3
- package/fontes/interpretador/interpretador-com-depuracao.js.map +1 -1
- package/fontes/interpretador/interpretador.d.ts +10 -4
- package/fontes/interpretador/interpretador.js +57 -47
- package/fontes/interpretador/interpretador.js.map +1 -1
- package/fontes/interpretador/pilha-escopos-execucao.js +16 -5
- package/fontes/interpretador/pilha-escopos-execucao.js.map +1 -1
- package/fontes/lexador/dialetos/index.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-birl.d.ts +25 -0
- package/fontes/lexador/dialetos/lexador-birl.js +75 -0
- package/fontes/lexador/dialetos/lexador-birl.js.map +1 -0
- package/fontes/lexador/dialetos/lexador-egua-classico.js +38 -38
- package/fontes/lexador/dialetos/lexador-egua-classico.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-eguap.d.ts +4 -4
- package/fontes/lexador/dialetos/lexador-eguap.js +50 -44
- package/fontes/lexador/dialetos/lexador-eguap.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-visualg.d.ts +16 -0
- package/fontes/lexador/dialetos/lexador-visualg.js +227 -0
- package/fontes/lexador/dialetos/lexador-visualg.js.map +1 -0
- package/fontes/lexador/dialetos/palavras-reservadas/birl.d.ts +2 -0
- package/fontes/lexador/dialetos/palavras-reservadas/birl.js +4 -0
- package/fontes/lexador/dialetos/palavras-reservadas/birl.js.map +1 -0
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.d.ts +26 -0
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js +32 -0
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js.map +1 -0
- package/fontes/lexador/lexador-base-linha-unica.d.ts +33 -0
- package/fontes/lexador/lexador-base-linha-unica.js +92 -0
- package/fontes/lexador/lexador-base-linha-unica.js.map +1 -0
- package/fontes/lexador/lexador.d.ts +3 -3
- package/fontes/lexador/lexador.js +43 -43
- package/fontes/lexador/lexador.js.map +1 -1
- package/fontes/lexador/palavras-reservadas.js +33 -33
- package/fontes/lexador/palavras-reservadas.js.map +1 -1
- package/fontes/lexador/simbolo.d.ts +1 -1
- package/fontes/lexador/simbolo.js +1 -1
- package/fontes/lexador/simbolo.js.map +1 -1
- package/fontes/quebras/index.js.map +1 -1
- package/fontes/resolvedor/dialetos/egua-classico.js +1 -1
- package/fontes/resolvedor/dialetos/egua-classico.js.map +1 -1
- package/fontes/resolvedor/dialetos/index.js.map +1 -1
- package/fontes/resolvedor/erro-resolvedor.d.ts +1 -1
- package/fontes/resolvedor/pilha-escopos.d.ts +1 -1
- package/fontes/resolvedor/pilha-escopos.js +2 -2
- package/fontes/resolvedor/pilha-escopos.js.map +1 -1
- package/fontes/resolvedor/retorno-resolvedor.d.ts +2 -2
- package/fontes/tipos-de-simbolos/birl.d.ts +18 -0
- package/fontes/tipos-de-simbolos/birl.js +21 -0
- package/fontes/tipos-de-simbolos/birl.js.map +1 -0
- package/fontes/tipos-de-simbolos/comum.d.ts +18 -0
- package/fontes/tipos-de-simbolos/comum.js +20 -0
- package/fontes/tipos-de-simbolos/comum.js.map +1 -0
- package/fontes/{tipos-de-simbolos.d.ts → tipos-de-simbolos/delegua.d.ts} +0 -0
- package/fontes/tipos-de-simbolos/delegua.js +78 -0
- package/fontes/tipos-de-simbolos/delegua.js.map +1 -0
- package/fontes/{lexador/dialetos/tipos-de-simbolos-eguap.d.ts → tipos-de-simbolos/eguap.d.ts} +0 -0
- package/fontes/tipos-de-simbolos/eguap.js +74 -0
- package/fontes/tipos-de-simbolos/eguap.js.map +1 -0
- package/fontes/tipos-de-simbolos/visualg.d.ts +47 -0
- package/fontes/tipos-de-simbolos/visualg.js +49 -0
- package/fontes/tipos-de-simbolos/visualg.js.map +1 -0
- package/index.js +1 -1
- package/index.js.map +1 -1
- package/jest.config.js +2 -2
- package/jest.config.js.map +1 -1
- package/package.json +78 -65
- package/testes/avaliador-sintatico.test.js +5 -5
- package/testes/avaliador-sintatico.test.js.map +1 -1
- package/testes/egua-classico/avaliador-sintatico.test.js +4 -1
- package/testes/egua-classico/avaliador-sintatico.test.js.map +1 -1
- package/testes/egua-classico/delegua.test.js.map +1 -1
- package/testes/egua-classico/resolvedor.test.js.map +1 -1
- package/testes/eguap/avaliador-sintatico.test.js +1 -5
- package/testes/eguap/avaliador-sintatico.test.js.map +1 -1
- package/testes/eguap/lexador.test.js +1 -1
- package/testes/eguap/lexador.test.js.map +1 -1
- package/testes/interpretador.test.js +48 -0
- package/testes/interpretador.test.js.map +1 -1
- package/testes/lexador.test.js +45 -45
- package/testes/lexador.test.js.map +1 -1
- package/testes/visualg/avaliador-sintatico.test.d.ts +1 -0
- package/testes/visualg/avaliador-sintatico.test.js +113 -0
- package/testes/visualg/avaliador-sintatico.test.js.map +1 -0
- package/testes/visualg/lexador.test.d.ts +1 -0
- package/testes/visualg/lexador.test.js +67 -0
- package/testes/visualg/lexador.test.js.map +1 -0
- package/fontes/lexador/dialetos/tipos-de-simbolos-eguap.js +0 -74
- package/fontes/lexador/dialetos/tipos-de-simbolos-eguap.js.map +0 -1
- package/fontes/tipos-de-simbolos.js +0 -78
- package/fontes/tipos-de-simbolos.js.map +0 -1
|
@@ -181,6 +181,12 @@ describe('Interpretador', function () {
|
|
|
181
181
|
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
182
182
|
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
183
183
|
});
|
|
184
|
+
it('Operações matemáticas - Subtração', function () {
|
|
185
|
+
var retornoLexador = delegua.lexador.mapear(["-1"], -1);
|
|
186
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
187
|
+
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
188
|
+
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
189
|
+
});
|
|
184
190
|
});
|
|
185
191
|
describe('Operações lógicas', function () {
|
|
186
192
|
it('Operações lógicas - ou', function () {
|
|
@@ -195,12 +201,54 @@ describe('Interpretador', function () {
|
|
|
195
201
|
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
196
202
|
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
197
203
|
});
|
|
204
|
+
it('Operações lógicas - negação', function () {
|
|
205
|
+
var retornoLexador = delegua.lexador.mapear(["!verdadeiro"], -1);
|
|
206
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
207
|
+
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
208
|
+
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
209
|
+
});
|
|
198
210
|
it('Operações lógicas - em', function () {
|
|
199
211
|
var retornoLexador = delegua.lexador.mapear(["escreva(2 em [1, 2, 3])"], -1);
|
|
200
212
|
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
201
213
|
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
202
214
|
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
203
215
|
});
|
|
216
|
+
it('Operações lógicas - bit a bit não', function () {
|
|
217
|
+
var retornoLexador = delegua.lexador.mapear(["~1"], -1);
|
|
218
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
219
|
+
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
220
|
+
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
221
|
+
});
|
|
222
|
+
it('Operações lógicas - menor menor', function () {
|
|
223
|
+
var retornoLexador = delegua.lexador.mapear(["1 << 2"], -1);
|
|
224
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
225
|
+
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
226
|
+
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
227
|
+
});
|
|
228
|
+
it('Operações lógicas - maior maior', function () {
|
|
229
|
+
var retornoLexador = delegua.lexador.mapear(["2 >> 1"], -1);
|
|
230
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
231
|
+
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
232
|
+
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
233
|
+
});
|
|
234
|
+
it('Operações lógicas - bit ou', function () {
|
|
235
|
+
var retornoLexador = delegua.lexador.mapear(["1 | 2"], -1);
|
|
236
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
237
|
+
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
238
|
+
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
239
|
+
});
|
|
240
|
+
it('Operações lógicas - bit e', function () {
|
|
241
|
+
var retornoLexador = delegua.lexador.mapear(["1 & 1"], -1);
|
|
242
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
243
|
+
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
244
|
+
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
245
|
+
});
|
|
246
|
+
it('Operações lógicas - bit xor', function () {
|
|
247
|
+
var retornoLexador = delegua.lexador.mapear(["1 ^ 2"], -1);
|
|
248
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
249
|
+
var retornoInterpretador = delegua.interpretador.interpretar(retornoAvaliadorSintatico.declaracoes);
|
|
250
|
+
expect(retornoInterpretador.erros).toHaveLength(0);
|
|
251
|
+
});
|
|
204
252
|
});
|
|
205
253
|
describe('Escolha - Caso', function () {
|
|
206
254
|
it('Escolha', function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpretador.test.js","sourceRoot":"","sources":["../../testes/interpretador.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interpretador.test.js","sourceRoot":"","sources":["../../testes/interpretador.test.ts"],"names":[],"mappings":"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"}
|
package/testes/lexador.test.js
CHANGED
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
var delegua_1 = require("../fontes/delegua");
|
|
7
|
-
var
|
|
7
|
+
var delegua_2 = __importDefault(require("../fontes/tipos-de-simbolos/delegua"));
|
|
8
8
|
describe('Lexador', function () {
|
|
9
9
|
describe('mapear()', function () {
|
|
10
10
|
var delegua;
|
|
@@ -27,10 +27,10 @@ describe('Lexador', function () {
|
|
|
27
27
|
expect(resultado).toBeTruthy();
|
|
28
28
|
expect(resultado.simbolos).toHaveLength(4);
|
|
29
29
|
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
30
|
-
expect.objectContaining({ tipo:
|
|
31
|
-
expect.objectContaining({ tipo:
|
|
32
|
-
expect.objectContaining({ tipo:
|
|
33
|
-
expect.objectContaining({ tipo:
|
|
30
|
+
expect.objectContaining({ tipo: delegua_2.default.ESCREVA }),
|
|
31
|
+
expect.objectContaining({ tipo: delegua_2.default.PARENTESE_ESQUERDO }),
|
|
32
|
+
expect.objectContaining({ tipo: delegua_2.default.TEXTO }),
|
|
33
|
+
expect.objectContaining({ tipo: delegua_2.default.PARENTESE_DIREITO }),
|
|
34
34
|
]));
|
|
35
35
|
});
|
|
36
36
|
it('Sucesso - Soma - Maior Igual', function () {
|
|
@@ -38,11 +38,11 @@ describe('Lexador', function () {
|
|
|
38
38
|
expect(resultado).toBeTruthy();
|
|
39
39
|
expect(resultado.simbolos).toHaveLength(7);
|
|
40
40
|
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
41
|
-
expect.objectContaining({ tipo:
|
|
42
|
-
expect.objectContaining({ tipo:
|
|
43
|
-
expect.objectContaining({ tipo:
|
|
44
|
-
expect.objectContaining({ tipo:
|
|
45
|
-
expect.objectContaining({ tipo:
|
|
41
|
+
expect.objectContaining({ tipo: delegua_2.default.VARIAVEL }),
|
|
42
|
+
expect.objectContaining({ tipo: delegua_2.default.IGUAL }),
|
|
43
|
+
expect.objectContaining({ tipo: delegua_2.default.NUMERO }),
|
|
44
|
+
expect.objectContaining({ tipo: delegua_2.default.IDENTIFICADOR }),
|
|
45
|
+
expect.objectContaining({ tipo: delegua_2.default.MAIS_IGUAL }),
|
|
46
46
|
]));
|
|
47
47
|
});
|
|
48
48
|
it('Sucesso - Subtração - Menor Igual', function () {
|
|
@@ -50,11 +50,11 @@ describe('Lexador', function () {
|
|
|
50
50
|
expect(resultado).toBeTruthy();
|
|
51
51
|
expect(resultado.simbolos).toHaveLength(7);
|
|
52
52
|
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
53
|
-
expect.objectContaining({ tipo:
|
|
54
|
-
expect.objectContaining({ tipo:
|
|
55
|
-
expect.objectContaining({ tipo:
|
|
56
|
-
expect.objectContaining({ tipo:
|
|
57
|
-
expect.objectContaining({ tipo:
|
|
53
|
+
expect.objectContaining({ tipo: delegua_2.default.VARIAVEL }),
|
|
54
|
+
expect.objectContaining({ tipo: delegua_2.default.IDENTIFICADOR }),
|
|
55
|
+
expect.objectContaining({ tipo: delegua_2.default.IGUAL }),
|
|
56
|
+
expect.objectContaining({ tipo: delegua_2.default.NUMERO }),
|
|
57
|
+
expect.objectContaining({ tipo: delegua_2.default.MENOS_IGUAL }),
|
|
58
58
|
]));
|
|
59
59
|
});
|
|
60
60
|
it('Sucesso - Multiplicação Igual', function () {
|
|
@@ -62,11 +62,11 @@ describe('Lexador', function () {
|
|
|
62
62
|
expect(resultado).toBeTruthy();
|
|
63
63
|
expect(resultado.simbolos).toHaveLength(7);
|
|
64
64
|
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
65
|
-
expect.objectContaining({ tipo:
|
|
66
|
-
expect.objectContaining({ tipo:
|
|
67
|
-
expect.objectContaining({ tipo:
|
|
68
|
-
expect.objectContaining({ tipo:
|
|
69
|
-
expect.objectContaining({ tipo:
|
|
65
|
+
expect.objectContaining({ tipo: delegua_2.default.VARIAVEL }),
|
|
66
|
+
expect.objectContaining({ tipo: delegua_2.default.IGUAL }),
|
|
67
|
+
expect.objectContaining({ tipo: delegua_2.default.NUMERO }),
|
|
68
|
+
expect.objectContaining({ tipo: delegua_2.default.IDENTIFICADOR }),
|
|
69
|
+
expect.objectContaining({ tipo: delegua_2.default.MULTIPLICACAO_IGUAL }),
|
|
70
70
|
]));
|
|
71
71
|
});
|
|
72
72
|
it('Sucesso - Diferente Igual', function () {
|
|
@@ -74,9 +74,9 @@ describe('Lexador', function () {
|
|
|
74
74
|
expect(resultado).toBeTruthy();
|
|
75
75
|
expect(resultado.simbolos).toHaveLength(3);
|
|
76
76
|
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
77
|
-
expect.objectContaining({ tipo:
|
|
78
|
-
expect.objectContaining({ tipo:
|
|
79
|
-
expect.objectContaining({ tipo:
|
|
77
|
+
expect.objectContaining({ tipo: delegua_2.default.NUMERO }),
|
|
78
|
+
expect.objectContaining({ tipo: delegua_2.default.DIFERENTE }),
|
|
79
|
+
expect.objectContaining({ tipo: delegua_2.default.NUMERO }),
|
|
80
80
|
]));
|
|
81
81
|
});
|
|
82
82
|
it('Sucesso - Divisão Igual', function () {
|
|
@@ -84,11 +84,11 @@ describe('Lexador', function () {
|
|
|
84
84
|
expect(resultado).toBeTruthy();
|
|
85
85
|
expect(resultado.simbolos).toHaveLength(7);
|
|
86
86
|
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
87
|
-
expect.objectContaining({ tipo:
|
|
88
|
-
expect.objectContaining({ tipo:
|
|
89
|
-
expect.objectContaining({ tipo:
|
|
90
|
-
expect.objectContaining({ tipo:
|
|
91
|
-
expect.objectContaining({ tipo:
|
|
87
|
+
expect.objectContaining({ tipo: delegua_2.default.VARIAVEL }),
|
|
88
|
+
expect.objectContaining({ tipo: delegua_2.default.IDENTIFICADOR }),
|
|
89
|
+
expect.objectContaining({ tipo: delegua_2.default.IGUAL }),
|
|
90
|
+
expect.objectContaining({ tipo: delegua_2.default.NUMERO }),
|
|
91
|
+
expect.objectContaining({ tipo: delegua_2.default.DIVISAO_IGUAL }),
|
|
92
92
|
]));
|
|
93
93
|
});
|
|
94
94
|
it('Sucesso - Módulo Igual', function () {
|
|
@@ -96,11 +96,11 @@ describe('Lexador', function () {
|
|
|
96
96
|
expect(resultado).toBeTruthy();
|
|
97
97
|
expect(resultado.simbolos).toHaveLength(7);
|
|
98
98
|
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
99
|
-
expect.objectContaining({ tipo:
|
|
100
|
-
expect.objectContaining({ tipo:
|
|
101
|
-
expect.objectContaining({ tipo:
|
|
102
|
-
expect.objectContaining({ tipo:
|
|
103
|
-
expect.objectContaining({ tipo:
|
|
99
|
+
expect.objectContaining({ tipo: delegua_2.default.VARIAVEL }),
|
|
100
|
+
expect.objectContaining({ tipo: delegua_2.default.IDENTIFICADOR }),
|
|
101
|
+
expect.objectContaining({ tipo: delegua_2.default.IGUAL }),
|
|
102
|
+
expect.objectContaining({ tipo: delegua_2.default.NUMERO }),
|
|
103
|
+
expect.objectContaining({ tipo: delegua_2.default.MODULO_IGUAL }),
|
|
104
104
|
]));
|
|
105
105
|
});
|
|
106
106
|
it('Sucesso - Comentários multilinha', function () {
|
|
@@ -123,15 +123,15 @@ describe('Lexador', function () {
|
|
|
123
123
|
expect(resultado).toBeTruthy();
|
|
124
124
|
expect(resultado.simbolos).toHaveLength(12);
|
|
125
125
|
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
126
|
-
expect.objectContaining({ tipo:
|
|
127
|
-
expect.objectContaining({ tipo:
|
|
128
|
-
expect.objectContaining({ tipo:
|
|
129
|
-
expect.objectContaining({ tipo:
|
|
130
|
-
expect.objectContaining({ tipo:
|
|
131
|
-
expect.objectContaining({ tipo:
|
|
132
|
-
expect.objectContaining({ tipo:
|
|
133
|
-
expect.objectContaining({ tipo:
|
|
134
|
-
expect.objectContaining({ tipo:
|
|
126
|
+
expect.objectContaining({ tipo: delegua_2.default.SE }),
|
|
127
|
+
expect.objectContaining({ tipo: delegua_2.default.ESCREVA }),
|
|
128
|
+
expect.objectContaining({ tipo: delegua_2.default.PARENTESE_ESQUERDO }),
|
|
129
|
+
expect.objectContaining({ tipo: delegua_2.default.TEXTO }),
|
|
130
|
+
expect.objectContaining({ tipo: delegua_2.default.PARENTESE_DIREITO }),
|
|
131
|
+
expect.objectContaining({ tipo: delegua_2.default.CHAVE_ESQUERDA }),
|
|
132
|
+
expect.objectContaining({ tipo: delegua_2.default.CHAVE_DIREITA }),
|
|
133
|
+
expect.objectContaining({ tipo: delegua_2.default.IGUAL_IGUAL }),
|
|
134
|
+
expect.objectContaining({ tipo: delegua_2.default.NUMERO }),
|
|
135
135
|
]));
|
|
136
136
|
});
|
|
137
137
|
it('Sucesso - Operação Matemática (soma e igualdade)', function () {
|
|
@@ -139,9 +139,9 @@ describe('Lexador', function () {
|
|
|
139
139
|
expect(resultado).toBeTruthy();
|
|
140
140
|
expect(resultado.simbolos).toHaveLength(5);
|
|
141
141
|
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
142
|
-
expect.objectContaining({ tipo:
|
|
143
|
-
expect.objectContaining({ tipo:
|
|
144
|
-
expect.objectContaining({ tipo:
|
|
142
|
+
expect.objectContaining({ tipo: delegua_2.default.ADICAO }),
|
|
143
|
+
expect.objectContaining({ tipo: delegua_2.default.IGUAL_IGUAL }),
|
|
144
|
+
expect.objectContaining({ tipo: delegua_2.default.NUMERO }),
|
|
145
145
|
]));
|
|
146
146
|
});
|
|
147
147
|
it('Sucesso - Atribução de variável e Operação Matemática (diferença, multiplicação e módulo)', function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lexador.test.js","sourceRoot":"","sources":["../../testes/lexador.test.ts"],"names":[],"mappings":";;;;;AAAA,6CAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"lexador.test.js","sourceRoot":"","sources":["../../testes/lexador.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var delegua_1 = require("../../fontes/delegua");
|
|
4
|
+
describe('Avaliador sintático (VisuAlg)', function () {
|
|
5
|
+
describe('analisar()', function () {
|
|
6
|
+
var delegua;
|
|
7
|
+
beforeEach(function () {
|
|
8
|
+
delegua = new delegua_1.Delegua('visualg');
|
|
9
|
+
});
|
|
10
|
+
it('Sucesso - Olá Mundo', function () {
|
|
11
|
+
var retornoLexador = delegua.lexador.mapear([
|
|
12
|
+
'algoritmo "olá-mundo"',
|
|
13
|
+
'inicio',
|
|
14
|
+
'escreva("Olá mundo")',
|
|
15
|
+
'fimalgoritmo'
|
|
16
|
+
], -1);
|
|
17
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
18
|
+
expect(retornoAvaliadorSintatico).toBeTruthy();
|
|
19
|
+
expect(retornoAvaliadorSintatico.declaracoes).toHaveLength(1);
|
|
20
|
+
});
|
|
21
|
+
it('Sucesso - Enquanto', function () {
|
|
22
|
+
var retornoLexador = delegua.lexador.mapear([
|
|
23
|
+
'algoritmo "Números de 1 a 10 (com enquanto...faca)"',
|
|
24
|
+
'var j: inteiro',
|
|
25
|
+
'inicio',
|
|
26
|
+
'j <- 1',
|
|
27
|
+
'enquanto j <= 10 faca',
|
|
28
|
+
' escreva (j)',
|
|
29
|
+
' j <- j + 1',
|
|
30
|
+
'fimenquanto',
|
|
31
|
+
'fimalgoritmo'
|
|
32
|
+
], -1);
|
|
33
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
34
|
+
expect(retornoAvaliadorSintatico).toBeTruthy();
|
|
35
|
+
expect(retornoAvaliadorSintatico.declaracoes).toHaveLength(3);
|
|
36
|
+
});
|
|
37
|
+
it('Sucesso - Escolha', function () {
|
|
38
|
+
var retornoLexador = delegua.lexador.mapear([
|
|
39
|
+
'algoritmo "Times"',
|
|
40
|
+
'var time: caractere',
|
|
41
|
+
'inicio',
|
|
42
|
+
'escreva ("Entre com o nome de um time de futebol: ")',
|
|
43
|
+
'leia (time)',
|
|
44
|
+
'escolha time',
|
|
45
|
+
' caso "Flamengo", "Fluminense", "Vasco", "Botafogo"',
|
|
46
|
+
' escreval ("É um time carioca.")',
|
|
47
|
+
' caso "São Paulo", "Palmeiras", "Santos", "Corínthians"',
|
|
48
|
+
' escreval ("É um time paulista.")',
|
|
49
|
+
' outrocaso',
|
|
50
|
+
' escreval ("É de outro estado.")',
|
|
51
|
+
'fimescolha',
|
|
52
|
+
'fimalgoritmo'
|
|
53
|
+
], -1);
|
|
54
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
55
|
+
expect(retornoAvaliadorSintatico).toBeTruthy();
|
|
56
|
+
});
|
|
57
|
+
it('Sucesso - Função', function () {
|
|
58
|
+
var retornoLexador = delegua.lexador.mapear([
|
|
59
|
+
'Algoritmo "exemplo-funcoes"',
|
|
60
|
+
'Var',
|
|
61
|
+
' n: inteiro',
|
|
62
|
+
' m: inteiro',
|
|
63
|
+
' res: inteiro',
|
|
64
|
+
'Inicio',
|
|
65
|
+
' funcao soma: inteiro',
|
|
66
|
+
' var aux: inteiro',
|
|
67
|
+
' inicio',
|
|
68
|
+
' aux <- n + m',
|
|
69
|
+
' retorne aux',
|
|
70
|
+
' fimfuncao',
|
|
71
|
+
' n <- 4',
|
|
72
|
+
' m <- -9',
|
|
73
|
+
' res <- soma',
|
|
74
|
+
' escreva(res)',
|
|
75
|
+
'Fimalgoritmo'
|
|
76
|
+
], -1);
|
|
77
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
78
|
+
expect(retornoAvaliadorSintatico).toBeTruthy();
|
|
79
|
+
expect(retornoAvaliadorSintatico.declaracoes).toHaveLength(8);
|
|
80
|
+
});
|
|
81
|
+
it('Sucesso - Para', function () {
|
|
82
|
+
var retornoLexador = delegua.lexador.mapear([
|
|
83
|
+
'algoritmo "Numeros de 1 a 10"',
|
|
84
|
+
'var j: inteiro',
|
|
85
|
+
'inicio',
|
|
86
|
+
' para j de 1 ate 10 faca',
|
|
87
|
+
' escreva (j)',
|
|
88
|
+
' fimpara',
|
|
89
|
+
'fimalgoritmo'
|
|
90
|
+
], -1);
|
|
91
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
92
|
+
expect(retornoAvaliadorSintatico).toBeTruthy();
|
|
93
|
+
expect(retornoAvaliadorSintatico.declaracoes).toHaveLength(2);
|
|
94
|
+
});
|
|
95
|
+
it('Sucesso - Repita', function () {
|
|
96
|
+
var retornoLexador = delegua.lexador.mapear([
|
|
97
|
+
'algoritmo "Números de 1 a 10 (com repita)"',
|
|
98
|
+
'var j: inteiro',
|
|
99
|
+
'inicio',
|
|
100
|
+
'j <- 1',
|
|
101
|
+
'repita',
|
|
102
|
+
' escreva (j)',
|
|
103
|
+
' j <- j + 1',
|
|
104
|
+
'ate j > 10',
|
|
105
|
+
'fimalgoritmo'
|
|
106
|
+
], -1);
|
|
107
|
+
var retornoAvaliadorSintatico = delegua.avaliadorSintatico.analisar(retornoLexador);
|
|
108
|
+
expect(retornoAvaliadorSintatico).toBeTruthy();
|
|
109
|
+
expect(retornoAvaliadorSintatico.declaracoes).toHaveLength(3);
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
//# sourceMappingURL=avaliador-sintatico.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avaliador-sintatico.test.js","sourceRoot":"","sources":["../../../testes/visualg/avaliador-sintatico.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var delegua_1 = require("../../fontes/delegua");
|
|
7
|
+
var visualg_1 = __importDefault(require("../../fontes/tipos-de-simbolos/visualg"));
|
|
8
|
+
describe('Lexador (VisuAlg)', function () {
|
|
9
|
+
describe('mapear()', function () {
|
|
10
|
+
var delegua;
|
|
11
|
+
beforeEach(function () {
|
|
12
|
+
delegua = new delegua_1.Delegua('visualg');
|
|
13
|
+
});
|
|
14
|
+
describe('Cenários de sucesso', function () {
|
|
15
|
+
it('Sucesso - Código vazio', function () {
|
|
16
|
+
var resultado = delegua.lexador.mapear([''], -1);
|
|
17
|
+
expect(resultado).toBeTruthy();
|
|
18
|
+
expect(resultado.simbolos).toHaveLength(0);
|
|
19
|
+
});
|
|
20
|
+
it('Sucesso - Ponto-e-vírgula, opcional', function () {
|
|
21
|
+
var resultado = delegua.lexador.mapear([';;;;;;;;;;;;;;;;;;;;;'], -1);
|
|
22
|
+
expect(resultado).toBeTruthy();
|
|
23
|
+
expect(resultado.simbolos).toHaveLength(0);
|
|
24
|
+
});
|
|
25
|
+
it('Sucesso - estrutura mínima', function () {
|
|
26
|
+
var resultado = delegua.lexador.mapear([
|
|
27
|
+
"algoritmo \"vazio\"",
|
|
28
|
+
"var",
|
|
29
|
+
"inicio",
|
|
30
|
+
"fimalgoritmo"
|
|
31
|
+
], -1);
|
|
32
|
+
expect(resultado).toBeTruthy();
|
|
33
|
+
expect(resultado.simbolos).toHaveLength(8);
|
|
34
|
+
expect(resultado.simbolos).toEqual(expect.arrayContaining([
|
|
35
|
+
expect.objectContaining({ tipo: visualg_1.default.ALGORITMO }),
|
|
36
|
+
expect.objectContaining({ tipo: visualg_1.default.CARACTERE }),
|
|
37
|
+
expect.objectContaining({ tipo: visualg_1.default.QUEBRA_LINHA }),
|
|
38
|
+
expect.objectContaining({ tipo: visualg_1.default.VAR }),
|
|
39
|
+
expect.objectContaining({ tipo: visualg_1.default.QUEBRA_LINHA }),
|
|
40
|
+
expect.objectContaining({ tipo: visualg_1.default.INICIO }),
|
|
41
|
+
expect.objectContaining({ tipo: visualg_1.default.QUEBRA_LINHA }),
|
|
42
|
+
// expect.objectContaining({ tipo: tiposDeSimbolos.ESCREVA }),
|
|
43
|
+
expect.objectContaining({ tipo: visualg_1.default.FIM_ALGORITMO })
|
|
44
|
+
]));
|
|
45
|
+
});
|
|
46
|
+
it('Sucesso - Olá mundo', function () {
|
|
47
|
+
var resultado = delegua.lexador.mapear([
|
|
48
|
+
"algoritmo \"ola-mundo\"",
|
|
49
|
+
"var",
|
|
50
|
+
"a: inteiro",
|
|
51
|
+
"inicio"
|
|
52
|
+
], -1);
|
|
53
|
+
expect(resultado).toBeTruthy();
|
|
54
|
+
/* expect(resultado.simbolos).toHaveLength(4);
|
|
55
|
+
expect(resultado.simbolos).toEqual(
|
|
56
|
+
expect.arrayContaining([
|
|
57
|
+
expect.objectContaining({ tipo: tiposDeSimbolos.ESCREVA }),
|
|
58
|
+
expect.objectContaining({ tipo: tiposDeSimbolos.PARENTESE_ESQUERDO }),
|
|
59
|
+
expect.objectContaining({ tipo: tiposDeSimbolos.TEXTO }),
|
|
60
|
+
expect.objectContaining({ tipo: tiposDeSimbolos.PARENTESE_DIREITO }),
|
|
61
|
+
])
|
|
62
|
+
); */
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
//# sourceMappingURL=lexador.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lexador.test.js","sourceRoot":"","sources":["../../../testes/visualg/lexador.test.ts"],"names":[],"mappings":";;;;;AAAA,gDAA+C;AAC/C,mFAAoE;AAEpE,QAAQ,CAAC,mBAAmB,EAAE;IAC1B,QAAQ,CAAC,UAAU,EAAE;QACjB,IAAI,OAAgB,CAAC;QAErB,UAAU,CAAC;YACP,OAAO,GAAG,IAAI,iBAAO,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,qBAAqB,EAAE;YAC5B,EAAE,CAAC,wBAAwB,EAAE;gBACzB,IAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAEnD,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC;gBAC/B,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,qCAAqC,EAAE;gBACtC,IAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAExE,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC;gBAC/B,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,4BAA4B,EAAE;gBAC7B,IAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;oBACrC,qBAAqB;oBACrB,KAAK;oBACL,QAAQ;oBACR,cAAc;iBACjB,EAAE,CAAC,CAAC,CAAC,CAAC;gBAEP,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC;gBAC/B,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAC9B,MAAM,CAAC,eAAe,CAAC;oBACnB,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,iBAAe,CAAC,SAAS,EAAE,CAAC;oBAC5D,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,iBAAe,CAAC,SAAS,EAAE,CAAC;oBAC5D,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,iBAAe,CAAC,YAAY,EAAE,CAAC;oBAC/D,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,iBAAe,CAAC,GAAG,EAAE,CAAC;oBACtD,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,iBAAe,CAAC,YAAY,EAAE,CAAC;oBAC/D,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,iBAAe,CAAC,MAAM,EAAE,CAAC;oBACzD,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,iBAAe,CAAC,YAAY,EAAE,CAAC;oBAC/D,8DAA8D;oBAC9D,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,iBAAe,CAAC,aAAa,EAAE,CAAC;iBACnE,CAAC,CACL,CAAC;YACN,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,qBAAqB,EAAE;gBACtB,IAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CACpC;oBACI,yBAAyB;oBACzB,KAAK;oBACL,YAAY;oBACZ,QAAQ;iBACX,EAAE,CAAC,CAAC,CAAC,CAAC;gBAEX,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC;gBAC/B;;;;;;;;qBAQK;YACT,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|