@designliquido/delegua 0.8.0 → 0.9.0-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/package.json +10 -2
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.d.ts +2 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js +3 -0
- package/fontes/avaliador-sintatico/avaliador-sintatico-base.js.map +1 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico.d.ts +7 -5
- package/fontes/avaliador-sintatico/avaliador-sintatico.js +16 -1
- package/fontes/avaliador-sintatico/avaliador-sintatico.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.d.ts +5 -4
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js +3 -0
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-egua-classico.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.d.ts +10 -9
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js +12 -0
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-eguap.js.map +1 -1
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.d.ts +2 -2
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js +17 -11
- package/fontes/avaliador-sintatico/dialetos/avaliador-sintatico-visualg.js.map +1 -1
- 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 +363 -134
- 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 +3 -3
- package/fontes/construtos/acesso-indice-variavel.js +41 -1
- package/fontes/construtos/acesso-indice-variavel.js.map +1 -1
- package/fontes/construtos/acesso-metodo.d.ts +3 -3
- package/fontes/construtos/acesso-metodo.js +41 -1
- package/fontes/construtos/acesso-metodo.js.map +1 -1
- package/fontes/construtos/agrupamento.d.ts +3 -3
- package/fontes/construtos/agrupamento.js +41 -1
- package/fontes/construtos/agrupamento.js.map +1 -1
- package/fontes/construtos/atribuicao-sobrescrita.d.ts +3 -2
- package/fontes/construtos/atribuicao-sobrescrita.js +41 -1
- package/fontes/construtos/atribuicao-sobrescrita.js.map +1 -1
- package/fontes/construtos/atribuir.d.ts +3 -3
- package/fontes/construtos/atribuir.js +41 -1
- package/fontes/construtos/atribuir.js.map +1 -1
- package/fontes/construtos/binario.d.ts +3 -3
- package/fontes/construtos/binario.js +41 -1
- package/fontes/construtos/binario.js.map +1 -1
- package/fontes/construtos/chamada.d.ts +3 -3
- package/fontes/construtos/chamada.js +41 -1
- package/fontes/construtos/chamada.js.map +1 -1
- package/fontes/construtos/conjunto.d.ts +3 -2
- package/fontes/construtos/conjunto.js +41 -1
- package/fontes/construtos/conjunto.js.map +1 -1
- package/fontes/construtos/construto.d.ts +1 -1
- package/fontes/construtos/dicionario.d.ts +3 -2
- package/fontes/construtos/dicionario.js +41 -1
- package/fontes/construtos/dicionario.js.map +1 -1
- package/fontes/construtos/funcao.d.ts +3 -3
- package/fontes/construtos/funcao.js +41 -1
- package/fontes/construtos/funcao.js.map +1 -1
- package/fontes/construtos/index.d.ts +18 -18
- package/fontes/construtos/isto.d.ts +3 -2
- package/fontes/construtos/isto.js +41 -1
- package/fontes/construtos/isto.js.map +1 -1
- package/fontes/construtos/literal.d.ts +4 -3
- package/fontes/construtos/literal.js +41 -1
- package/fontes/construtos/literal.js.map +1 -1
- package/fontes/construtos/logico.d.ts +3 -2
- package/fontes/construtos/logico.js +41 -1
- package/fontes/construtos/logico.js.map +1 -1
- package/fontes/construtos/super.d.ts +2 -2
- package/fontes/construtos/super.js +41 -1
- package/fontes/construtos/super.js.map +1 -1
- package/fontes/construtos/unario.d.ts +3 -2
- package/fontes/construtos/unario.js +41 -1
- package/fontes/construtos/unario.js.map +1 -1
- package/fontes/construtos/variavel.d.ts +3 -3
- package/fontes/construtos/variavel.js +41 -1
- package/fontes/construtos/variavel.js.map +1 -1
- package/fontes/construtos/vetor.d.ts +2 -1
- package/fontes/construtos/vetor.js +41 -1
- package/fontes/construtos/vetor.js.map +1 -1
- package/fontes/declaracoes/bloco.d.ts +3 -3
- package/fontes/declaracoes/bloco.js +41 -1
- package/fontes/declaracoes/bloco.js.map +1 -1
- package/fontes/declaracoes/classe.d.ts +3 -3
- package/fontes/declaracoes/classe.js +41 -1
- package/fontes/declaracoes/classe.js.map +1 -1
- package/fontes/declaracoes/continua.d.ts +3 -3
- package/fontes/declaracoes/continua.js +41 -1
- package/fontes/declaracoes/continua.js.map +1 -1
- package/fontes/declaracoes/declaracao.d.ts +2 -1
- package/fontes/declaracoes/declaracao.js +43 -3
- package/fontes/declaracoes/declaracao.js.map +1 -1
- package/fontes/declaracoes/enquanto.d.ts +4 -3
- package/fontes/declaracoes/enquanto.js +41 -1
- package/fontes/declaracoes/enquanto.js.map +1 -1
- package/fontes/declaracoes/escolha.d.ts +4 -3
- package/fontes/declaracoes/escolha.js +41 -1
- package/fontes/declaracoes/escolha.js.map +1 -1
- package/fontes/declaracoes/escreva.d.ts +1 -1
- package/fontes/declaracoes/escreva.js +41 -1
- package/fontes/declaracoes/escreva.js.map +1 -1
- package/fontes/declaracoes/expressao.d.ts +4 -4
- package/fontes/declaracoes/expressao.js +41 -1
- package/fontes/declaracoes/expressao.js.map +1 -1
- package/fontes/declaracoes/fazer.d.ts +3 -2
- package/fontes/declaracoes/fazer.js +41 -1
- package/fontes/declaracoes/fazer.js.map +1 -1
- package/fontes/declaracoes/funcao.d.ts +3 -3
- package/fontes/declaracoes/funcao.js +41 -1
- package/fontes/declaracoes/funcao.js.map +1 -1
- package/fontes/declaracoes/importar.d.ts +4 -3
- package/fontes/declaracoes/importar.js +41 -1
- package/fontes/declaracoes/importar.js.map +1 -1
- package/fontes/declaracoes/leia.d.ts +4 -4
- package/fontes/declaracoes/leia.js +44 -1
- package/fontes/declaracoes/leia.js.map +1 -1
- package/fontes/declaracoes/para.d.ts +3 -2
- package/fontes/declaracoes/para.js +41 -1
- package/fontes/declaracoes/para.js.map +1 -1
- package/fontes/declaracoes/retorna.d.ts +3 -3
- package/fontes/declaracoes/retorna.js +41 -1
- package/fontes/declaracoes/retorna.js.map +1 -1
- package/fontes/declaracoes/se.d.ts +3 -3
- package/fontes/declaracoes/se.js +41 -1
- package/fontes/declaracoes/se.js.map +1 -1
- package/fontes/declaracoes/sustar.d.ts +3 -3
- package/fontes/declaracoes/sustar.js +41 -1
- package/fontes/declaracoes/sustar.js.map +1 -1
- package/fontes/declaracoes/tente.d.ts +3 -3
- package/fontes/declaracoes/tente.js +41 -1
- package/fontes/declaracoes/tente.js.map +1 -1
- package/fontes/declaracoes/var.d.ts +4 -4
- package/fontes/declaracoes/var.js +41 -1
- package/fontes/declaracoes/var.js.map +1 -1
- package/fontes/delegua.d.ts +4 -4
- package/fontes/delegua.js +138 -63
- 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.d.ts +4 -4
- package/fontes/depuracao/servidor-depuracao.js +199 -87
- 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 +2 -2
- package/fontes/estruturas/funcao-padrao.js +47 -3
- package/fontes/estruturas/funcao-padrao.js.map +1 -1
- package/fontes/estruturas/funcao.d.ts +5 -5
- package/fontes/estruturas/funcao.js +75 -24
- 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 +5 -4
- package/fontes/interfaces/delegua-interface.d.ts +4 -4
- 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 +6 -7
- package/fontes/interfaces/interpretador-interface.d.ts +6 -5
- package/fontes/interfaces/lexador-interface.d.ts +2 -2
- 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 +31 -30
- package/fontes/interpretador/dialetos/egua-classico.js +922 -461
- 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.d.ts +6 -6
- package/fontes/interpretador/interpretador-com-depuracao.js +280 -153
- package/fontes/interpretador/interpretador-com-depuracao.js.map +1 -1
- package/fontes/interpretador/interpretador.d.ts +44 -35
- package/fontes/interpretador/interpretador.js +1047 -535
- 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 +3 -3
- 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 +15 -9
- package/fontes/lexador/dialetos/lexador-eguap.js.map +1 -1
- package/fontes/lexador/dialetos/lexador-visualg.d.ts +2 -2
- package/fontes/lexador/dialetos/lexador-visualg.js +6 -4
- package/fontes/lexador/dialetos/lexador-visualg.js.map +1 -1
- 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.js +1 -1
- package/fontes/lexador/dialetos/palavras-reservadas/visualg.js.map +1 -1
- package/fontes/lexador/lexador-base-linha-unica.d.ts +3 -3
- package/fontes/lexador/lexador-base-linha-unica.js.map +1 -1
- package/fontes/lexador/lexador.js +2 -2
- package/fontes/lexador/lexador.js.map +1 -1
- package/fontes/lexador/palavras-reservadas.d.ts +22 -21
- package/fontes/lexador/palavras-reservadas.js +22 -21
- 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.d.ts +25 -3
- package/fontes/resolvedor/dialetos/egua-classico.js +41 -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.js +15 -15
- package/fontes/tipos-de-simbolos/comum.js.map +1 -1
- package/fontes/tipos-de-simbolos/delegua.d.ts +2 -1
- package/fontes/tipos-de-simbolos/delegua.js +74 -73
- package/fontes/tipos-de-simbolos/delegua.js.map +1 -1
- package/fontes/tipos-de-simbolos/eguap.d.ts +1 -0
- package/fontes/tipos-de-simbolos/eguap.js +70 -69
- package/fontes/tipos-de-simbolos/eguap.js.map +1 -1
- package/fontes/tipos-de-simbolos/visualg.js +44 -44
- package/fontes/tipos-de-simbolos/visualg.js.map +1 -1
- 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 +10 -2
- package/testes/avaliador-sintatico.test.js +5 -5
- package/testes/avaliador-sintatico.test.js.map +1 -1
- package/testes/biblioteca-global.test.js +424 -181
- package/testes/biblioteca-global.test.js.map +1 -1
- package/testes/egua-classico/delegua.test.js.map +1 -1
- package/testes/egua-classico/interpretador.test.js +379 -163
- package/testes/egua-classico/interpretador.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/interpretador.test.js +388 -172
- package/testes/eguap/interpretador.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 +876 -351
- package/testes/interpretador.test.js.map +1 -1
- package/fontes/tipos/avaliador-sintatico-egua-e-eguap-classico-returno-tipo.d.ts +0 -5
- package/fontes/tipos/avaliador-sintatico-egua-e-eguap-classico-returno-tipo.js +0 -3
- package/fontes/tipos/avaliador-sintatico-egua-e-eguap-classico-returno-tipo.js.map +0 -1
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import * as readline from 'readline';
|
|
1
3
|
import { EspacoVariaveis } from '../espaco-variaveis';
|
|
2
4
|
import { InterpretadorInterface, SimboloInterface, VariavelInterface } from '../interfaces';
|
|
3
5
|
import { Bloco, Classe, Continua, Declaracao, Enquanto, Escolha, Escreva, Expressao, Fazer, Funcao, Importar, Leia, Para, Retorna, Se, Tente, Var } from '../declaracoes';
|
|
@@ -18,17 +20,19 @@ export declare class Interpretador implements InterpretadorInterface {
|
|
|
18
20
|
erros: ErroInterpretador[];
|
|
19
21
|
performance: boolean;
|
|
20
22
|
funcaoDeRetorno: Function;
|
|
21
|
-
|
|
23
|
+
interfaceDeEntrada: readline.Interface;
|
|
24
|
+
resultadoInterpretador: Array<string>;
|
|
22
25
|
declaracoes: Declaracao[];
|
|
23
26
|
pilhaEscoposExecucao: PilhaEscoposExecucaoInterface;
|
|
24
27
|
regexInterpolacao: RegExp;
|
|
25
|
-
constructor(importador: ImportadorInterface, diretorioBase: string, performance
|
|
28
|
+
constructor(importador: ImportadorInterface, diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function);
|
|
26
29
|
/**
|
|
27
30
|
* Execução da leitura de valores da entrada configurada no
|
|
28
31
|
* início da aplicação.
|
|
29
|
-
* @param expressao
|
|
32
|
+
* @param expressao Expressão do tipo Leia
|
|
33
|
+
* @returns Promise com o resultado da leitura.
|
|
30
34
|
*/
|
|
31
|
-
visitarExpressaoLeia(expressao: Leia):
|
|
35
|
+
visitarExpressaoLeia(expressao: Leia): Promise<any>;
|
|
32
36
|
/**
|
|
33
37
|
* Retira a interpolação de um texto.
|
|
34
38
|
* @param {texto} texto O texto
|
|
@@ -43,11 +47,11 @@ export declare class Interpretador implements InterpretadorInterface {
|
|
|
43
47
|
*/
|
|
44
48
|
buscarVariaveisInterpolacao(textoOriginal: string): any[];
|
|
45
49
|
visitarExpressaoLiteral(expressao: Literal): any;
|
|
46
|
-
avaliar(expressao: Construto): any
|
|
47
|
-
visitarExpressaoAgrupamento(expressao: any): any
|
|
50
|
+
avaliar(expressao: Construto): Promise<any>;
|
|
51
|
+
visitarExpressaoAgrupamento(expressao: any): Promise<any>;
|
|
48
52
|
eVerdadeiro(objeto: any): boolean;
|
|
49
|
-
verificarOperandoNumero(operador:
|
|
50
|
-
visitarExpressaoUnaria(expressao: any): any
|
|
53
|
+
verificarOperandoNumero(operador: SimboloInterface, operando: any): void;
|
|
54
|
+
visitarExpressaoUnaria(expressao: any): Promise<any>;
|
|
51
55
|
eIgual(esquerda: VariavelInterface | any, direita: VariavelInterface | any): boolean;
|
|
52
56
|
/**
|
|
53
57
|
* Verifica se operandos são números, que podem ser tanto variáveis puras do JavaScript
|
|
@@ -58,43 +62,43 @@ export declare class Interpretador implements InterpretadorInterface {
|
|
|
58
62
|
* @returns Se ambos os operandos são números ou não.
|
|
59
63
|
*/
|
|
60
64
|
verificarOperandosNumeros(operador: any, direita: VariavelInterface | any, esquerda: VariavelInterface | any): void;
|
|
61
|
-
visitarExpressaoBinaria(expressao: any): any
|
|
65
|
+
visitarExpressaoBinaria(expressao: any): Promise<any>;
|
|
62
66
|
/**
|
|
63
67
|
* Executa uma chamada de função, método ou classe.
|
|
64
68
|
* @param expressao A expressão chamada.
|
|
65
69
|
* @returns O resultado da chamada.
|
|
66
70
|
*/
|
|
67
|
-
visitarExpressaoDeChamada(expressao: any): any
|
|
71
|
+
visitarExpressaoDeChamada(expressao: any): Promise<any>;
|
|
68
72
|
/**
|
|
69
73
|
* Execução de uma expressão de atribuição.
|
|
70
74
|
* @param expressao A expressão.
|
|
71
75
|
* @returns O valor atribuído.
|
|
72
76
|
*/
|
|
73
|
-
visitarExpressaoDeAtribuicao(expressao: Atribuir): any
|
|
77
|
+
visitarExpressaoDeAtribuicao(expressao: Atribuir): Promise<any>;
|
|
74
78
|
procurarVariavel(simbolo: SimboloInterface): any;
|
|
75
79
|
visitarExpressaoDeVariavel(expressao: Variavel): any;
|
|
76
|
-
visitarDeclaracaoDeExpressao(declaracao: Expressao): any
|
|
77
|
-
visitarExpressaoLogica(expressao: any): any
|
|
80
|
+
visitarDeclaracaoDeExpressao(declaracao: Expressao): Promise<any>;
|
|
81
|
+
visitarExpressaoLogica(expressao: any): Promise<any>;
|
|
78
82
|
/**
|
|
79
83
|
* Executa uma expressão Se, que tem uma condição, pode ter um bloco
|
|
80
84
|
* Senão, e múltiplos blocos Senão-se.
|
|
81
85
|
* @param declaracao A declaração Se.
|
|
82
86
|
* @returns O resultado da avaliação do bloco cuja condição é verdadeira.
|
|
83
87
|
*/
|
|
84
|
-
visitarExpressaoSe(declaracao: Se): any
|
|
85
|
-
visitarExpressaoPara(declaracao: Para): any
|
|
86
|
-
visitarExpressaoFazer(declaracao: Fazer): any
|
|
87
|
-
visitarExpressaoEscolha(declaracao: Escolha): any
|
|
88
|
-
visitarExpressaoTente(declaracao: Tente): any
|
|
89
|
-
visitarExpressaoEnquanto(declaracao: Enquanto): any
|
|
90
|
-
visitarExpressaoImportar(declaracao: Importar): any
|
|
88
|
+
visitarExpressaoSe(declaracao: Se): Promise<any>;
|
|
89
|
+
visitarExpressaoPara(declaracao: Para): Promise<any>;
|
|
90
|
+
visitarExpressaoFazer(declaracao: Fazer): Promise<any>;
|
|
91
|
+
visitarExpressaoEscolha(declaracao: Escolha): Promise<any>;
|
|
92
|
+
visitarExpressaoTente(declaracao: Tente): Promise<any>;
|
|
93
|
+
visitarExpressaoEnquanto(declaracao: Enquanto): Promise<any>;
|
|
94
|
+
visitarExpressaoImportar(declaracao: Importar): Promise<any>;
|
|
91
95
|
/**
|
|
92
96
|
* Execução de uma escrita na saída configurada, que pode ser `console` (padrão) ou
|
|
93
97
|
* alguma função para escrever numa página Web.
|
|
94
98
|
* @param declaracao A declaração.
|
|
95
99
|
* @returns Sempre nulo, por convenção de visita.
|
|
96
100
|
*/
|
|
97
|
-
visitarExpressaoEscreva(declaracao: Escreva): any
|
|
101
|
+
visitarExpressaoEscreva(declaracao: Escreva): Promise<any>;
|
|
98
102
|
/**
|
|
99
103
|
* Empilha declarações na pilha de escopos de execução, cria um novo ambiente e
|
|
100
104
|
* executa as declarações empilhadas.
|
|
@@ -104,37 +108,37 @@ export declare class Interpretador implements InterpretadorInterface {
|
|
|
104
108
|
* @param declaracoes Um vetor de declaracoes a ser executado.
|
|
105
109
|
* @param ambiente O ambiente de execução quando houver, como parâmetros, argumentos, etc.
|
|
106
110
|
*/
|
|
107
|
-
executarBloco(declaracoes: Declaracao[], ambiente?: EspacoVariaveis): any
|
|
108
|
-
visitarExpressaoBloco(declaracao: Bloco): any
|
|
111
|
+
executarBloco(declaracoes: Declaracao[], ambiente?: EspacoVariaveis): Promise<any>;
|
|
112
|
+
visitarExpressaoBloco(declaracao: Bloco): Promise<any>;
|
|
109
113
|
/**
|
|
110
114
|
* Executa expressão de definição de variável.
|
|
111
115
|
* @param declaracao A declaração Var
|
|
112
116
|
* @returns Sempre retorna nulo.
|
|
113
117
|
*/
|
|
114
|
-
visitarExpressaoVar(declaracao: Var): any
|
|
118
|
+
visitarExpressaoVar(declaracao: Var): Promise<any>;
|
|
115
119
|
visitarExpressaoContinua(declaracao?: Continua): ContinuarQuebra;
|
|
116
120
|
visitarExpressaoSustar(declaracao?: any): SustarQuebra;
|
|
117
|
-
visitarExpressaoRetornar(declaracao: Retorna): RetornoQuebra
|
|
121
|
+
visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
|
|
118
122
|
visitarExpressaoDeleguaFuncao(expressao: any): DeleguaFuncao;
|
|
119
|
-
visitarExpressaoAtribuicaoSobrescrita(expressao: any):
|
|
120
|
-
visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel | any): any
|
|
121
|
-
visitarExpressaoDefinir(expressao: any): any
|
|
123
|
+
visitarExpressaoAtribuicaoSobrescrita(expressao: any): Promise<any>;
|
|
124
|
+
visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel | any): Promise<any>;
|
|
125
|
+
visitarExpressaoDefinir(expressao: any): Promise<any>;
|
|
122
126
|
visitarExpressaoFuncao(declaracao: Funcao): void;
|
|
123
127
|
/**
|
|
124
128
|
* Executa uma declaração de classe.
|
|
125
129
|
* @param declaracao A declaração de classe.
|
|
126
130
|
* @returns Sempre retorna nulo, por ser requerido pelo contrato de visita.
|
|
127
131
|
*/
|
|
128
|
-
visitarExpressaoClasse(declaracao: Classe): any
|
|
132
|
+
visitarExpressaoClasse(declaracao: Classe): Promise<any>;
|
|
129
133
|
/**
|
|
130
134
|
* Executa um acesso a método, normalmente de um objeto de classe.
|
|
131
135
|
* @param expressao A expressão de acesso.
|
|
132
136
|
* @returns O resultado da execução.
|
|
133
137
|
*/
|
|
134
|
-
visitarExpressaoAcessoMetodo(expressao: any): any
|
|
138
|
+
visitarExpressaoAcessoMetodo(expressao: any): Promise<any>;
|
|
135
139
|
visitarExpressaoIsto(expressao: any): any;
|
|
136
|
-
visitarExpressaoDicionario(expressao: any):
|
|
137
|
-
visitarExpressaoVetor(expressao: any): any
|
|
140
|
+
visitarExpressaoDicionario(expressao: any): Promise<any>;
|
|
141
|
+
visitarExpressaoVetor(expressao: any): Promise<any>;
|
|
138
142
|
visitarExpressaoSuper(expressao: Super): any;
|
|
139
143
|
paraTexto(objeto: any): any;
|
|
140
144
|
/**
|
|
@@ -143,7 +147,7 @@ export declare class Interpretador implements InterpretadorInterface {
|
|
|
143
147
|
* @param mostrarResultado Se resultado deve ser mostrado ou não. Normalmente usado
|
|
144
148
|
* pelo modo LAIR.
|
|
145
149
|
*/
|
|
146
|
-
executar(declaracao: Declaracao, mostrarResultado?: boolean): any
|
|
150
|
+
executar(declaracao: Declaracao, mostrarResultado?: boolean): Promise<any>;
|
|
147
151
|
/**
|
|
148
152
|
* Executa o último escopo empilhado no topo na pilha de escopos do interpretador.
|
|
149
153
|
* Esse método pega exceções, mas apenas as devolve.
|
|
@@ -154,7 +158,7 @@ export declare class Interpretador implements InterpretadorInterface {
|
|
|
154
158
|
* @param manterAmbiente Se verdadeiro, ambiente do topo da pilha de escopo é copiado para o ambiente imediatamente abaixo.
|
|
155
159
|
* @returns O resultado da execução do escopo, se houver.
|
|
156
160
|
*/
|
|
157
|
-
executarUltimoEscopo(manterAmbiente?: boolean): any
|
|
161
|
+
executarUltimoEscopo(manterAmbiente?: boolean): Promise<any>;
|
|
158
162
|
/**
|
|
159
163
|
* Interpretação sem depurador, com medição de performance.
|
|
160
164
|
* Método que efetivamente inicia o processo de interpretação.
|
|
@@ -163,5 +167,10 @@ export declare class Interpretador implements InterpretadorInterface {
|
|
|
163
167
|
* pelo modo REPL (LEIA).
|
|
164
168
|
* @returns Um objeto com o resultado da interpretação.
|
|
165
169
|
*/
|
|
166
|
-
interpretar(declaracoes: Declaracao[], manterAmbiente?: boolean): RetornoInterpretador
|
|
170
|
+
interpretar(declaracoes: Declaracao[], manterAmbiente?: boolean): Promise<RetornoInterpretador>;
|
|
171
|
+
/**
|
|
172
|
+
* Procedimento de finalização de execução, normalmente solicitado pelo
|
|
173
|
+
* núcleo da linguagem.
|
|
174
|
+
*/
|
|
175
|
+
finalizacao(): void;
|
|
167
176
|
}
|