@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
100 lines • 7.29 kB
TypeScript
import { AcessoIndiceVariavel, AcessoIntervaloVariavel, AcessoMetodo, AcessoPropriedade, Agrupamento, ArgumentoReferenciaFuncao, AtribuicaoPorIndice, Atribuir, Chamada, ComentarioComoConstruto, ExpressaoRegular, FimPara, FormatacaoEscrita, Leia, Literal, Logico, ReferenciaFuncao, Super, TipoDe, Tupla, TuplaN, Unario, Variavel } from '../../../construtos';
import { Bloco, CabecalhoPrograma, Classe, Comentario, Const, ConstMultiplo, Continua, Declaracao, Enquanto, Escolha, Escreva, EscrevaMesmaLinha, Expressao, Fazer, FuncaoDeclaracao, Importar, Para, ParaCada, Retorna, Se, Sustar, TendoComo, Tente, TextoDocumentacao, Var, VarMultiplo } from '../../../declaracoes';
import { EspacoMemoria } from '../../espaco-memoria';
import { ConstrutoInterface } from '../../../interfaces/construtos/construto-interface';
import { Chamavel } from '../../estruturas';
import { InterpretadorInterface, ResultadoParcialInterpretadorInterface, SimboloInterface, VariavelInterface } from '../../../interfaces';
import { ErroInterpretadorInterface } from '../../../interfaces/erros/erro-interpretador-interface';
import { PilhaEscoposExecucaoInterface } from '../../../interfaces/pilha-escopos-execucao-interface';
import { RetornoInterpretadorInterface } from '../../../interfaces/retornos';
import { ContinuarQuebra, RetornoQuebra, SustarQuebra } from '../../../quebras';
import { InicioAlgoritmo } from '../../../declaracoes/inicio-algoritmo';
export declare class InterpretadorPortugolIpt implements InterpretadorInterface {
diretorioBase: any;
funcaoDeRetorno: Function;
funcaoDeRetornoMesmaLinha: Function;
pilhaEscoposExecucao: PilhaEscoposExecucaoInterface;
interfaceEntradaSaida: any;
declaracoes: Declaracao[];
erros: ErroInterpretadorInterface[];
hashArquivoDeclaracaoAtual: number;
linhaDeclaracaoAtual: number;
classeAtualEmExecucao: any;
resultadoInterpretador: ResultadoParcialInterpretadorInterface[];
constructor(diretorioBase: string, funcaoDeRetorno?: Function, funcaoDeRetornoMesmaLinha?: Function);
resolverValor(objeto: any): any;
eVerdadeiro(objeto: any): boolean;
protected eIgual(esquerda: any, direita: any): boolean;
protected verificarOperandosNumeros(operador: SimboloInterface, direita: VariavelInterface | any, esquerda: VariavelInterface | any): void;
paraTexto(objeto: any): any;
visitarExpressaoLiteral(expressao: Literal): Promise<any>;
visitarExpressaoAgrupamento(expressao: Agrupamento): Promise<any>;
visitarExpressaoBinaria(expressao: any): Promise<any>;
visitarExpressaoLogica(expressao: Logico): Promise<any>;
visitarExpressaoUnaria(expressao: Unario): Promise<any>;
visitarExpressaoDeAtribuicao(expressao: Atribuir): Promise<any>;
visitarExpressaoDeVariavel(expressao: Variavel): any;
visitarExpressaoLeia(expressao: Leia): Promise<any>;
visitarExpressaoFormatacaoEscrita(declaracao: FormatacaoEscrita): Promise<string>;
visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel): Promise<any>;
visitarExpressaoAtribuicaoPorIndice(expressao: AtribuicaoPorIndice): Promise<any>;
visitarExpressaoDeChamada(expressao: Chamada): Promise<any>;
private chamarFuncaoEmbutida;
visitarDeclaracaoDeExpressao(declaracao: Expressao): Promise<any>;
visitarDeclaracaoEscreva(declaracao: Escreva): Promise<any>;
visitarDeclaracaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): Promise<any>;
protected avaliarArgumentosEscreva(argumentos: ConstrutoInterface[]): Promise<string>;
visitarDeclaracaoVar(declaracao: Var): Promise<any>;
visitarDeclaracaoConst(declaracao: Const): Promise<any>;
visitarDeclaracaoSe(declaracao: Se): Promise<any>;
visitarDeclaracaoEnquanto(declaracao: Enquanto): Promise<any>;
visitarDeclaracaoPara(declaracao: Para): Promise<any>;
visitarDeclaracaoFazer(declaracao: Fazer): Promise<any>;
visitarDeclaracaoEscolha(declaracao: Escolha): Promise<any>;
visitarDeclaracaoComentario(declaracao: Comentario): Promise<any>;
executarBloco(declaracoes: Declaracao[], ambiente?: EspacoMemoria): Promise<any>;
visitarExpressaoBloco(declaracao: Bloco): Promise<any>;
visitarExpressaoTuplaN(_expressao: TuplaN): Promise<any> | void;
visitarExpressaoAcessoIntervaloVariavel(_expressao: AcessoIntervaloVariavel): Promise<any> | void;
visitarDeclaracaoTextoDocumentacao(_declaracao: TextoDocumentacao): Promise<any> | void;
visitarExpressaoSeparador(_expressao: any): Promise<any> | void;
visitarExpressaoComentario(_expressao: ComentarioComoConstruto): Promise<any> | void;
visitarExpressaoArgumentoReferenciaFuncao(_expressao: ArgumentoReferenciaFuncao): Promise<any> | void;
visitarExpressaoReferenciaFuncao(_expressao: ReferenciaFuncao): Promise<any> | void;
visitarExpressaoAcessoMetodo(_expressao: AcessoMetodo): Promise<any> | void;
visitarExpressaoAcessoPropriedade(_expressao: AcessoPropriedade): Promise<any> | void;
visitarDeclaracaoTendoComo(_declaracao: TendoComo): Promise<any>;
visitarDeclaracaoInicioAlgoritmo(_declaracao: InicioAlgoritmo): Promise<any>;
visitarDeclaracaoCabecalhoPrograma(_declaracao: CabecalhoPrograma): Promise<any>;
visitarExpressaoTupla(_expressao: Tupla): Promise<any>;
visitarExpressaoAcessoElementoMatriz(_expressao: any): never;
visitarExpressaoAtribuicaoPorIndicesMatriz(_expressao: any): Promise<any>;
visitarExpressaoExpressaoRegular(_expressao: ExpressaoRegular): Promise<any>;
visitarExpressaoTipoDe(_expressao: TipoDe): Promise<any>;
visitarExpressaoFalhar(_expressao: any): Promise<any>;
visitarDeclaracaoParaCada(_declaracao: ParaCada): Promise<any>;
visitarDeclaracaoVarMultiplo(_declaracao: VarMultiplo): Promise<any>;
visitarDeclaracaoConstMultiplo(_declaracao: ConstMultiplo): Promise<any>;
visitarExpressaoContinua(_declaracao?: Continua): ContinuarQuebra;
visitarExpressaoSustar(_declaracao?: Sustar): SustarQuebra;
visitarExpressaoRetornar(_declaracao: Retorna): Promise<RetornoQuebra>;
visitarExpressaoFuncaoConstruto(_expressao: any): never;
visitarExpressaoDefinirValor(_expressao: any): never;
visitarDeclaracaoDefinicaoFuncao(_declaracao: FuncaoDeclaracao): never;
visitarDeclaracaoClasse(_declaracao: Classe): never;
visitarExpressaoAcessoMetodoOuPropriedade(_expressao: any): never;
visitarExpressaoIsto(_expressao: any): never;
visitarExpressaoDicionario(_expressao: any): never;
visitarExpressaoVetor(expressao: any): Promise<any[]>;
visitarExpressaoSuper(_expressao: Super): never;
visitarExpressaoFimPara(_declaracao: FimPara): never;
visitarDeclaracaoTente(_declaracao: Tente): never;
visitarDeclaracaoImportar(_declaracao: Importar): never;
avaliar(expressao: ConstrutoInterface | Declaracao): Promise<any>;
protected procurarVariavel(simbolo: SimboloInterface): any;
executar(declaracao: Declaracao, mostrarResultado?: boolean): Promise<any>;
executarUltimoEscopo(manterAmbiente?: boolean): Promise<any>;
executarChamavel(chamavel: Chamavel, argumentos: any[]): Promise<any>;
interpretar(declaracoes: Declaracao[], manterAmbiente?: boolean): Promise<RetornoInterpretadorInterface>;
}
//# sourceMappingURL=interpretador-portugol-ipt.d.ts.map