@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
35 lines • 1.67 kB
TypeScript
import { Construto, FuncaoConstruto, Leia } from '../../construtos';
import { Escreva, Declaracao, Se, Enquanto, Para, Escolha, Fazer, Var } from '../../declaracoes';
import { RetornoLexador, RetornoAvaliadorSintatico } from '../../interfaces/retornos';
import { AvaliadorSintaticoBase } from '../avaliador-sintatico-base';
import { SimboloInterface } from '../../interfaces';
export declare class AvaliadorSintaticoPortugolIpt extends AvaliadorSintaticoBase {
primario(): Promise<Construto>;
/**
* Aparentemente, o Portugol IPT não suporta chamadas de função.
* @returns O retorno da chamada de `primario()`.
*/
chamar(): Promise<Construto>;
atribuir(): Promise<Construto>;
/**
* A declaração escreva (ou escrever) do Portugol IPT é sempre na mesma linha.
*/
declaracaoEscreva(): Promise<Escreva>;
blocoEscopo(): Promise<Declaracao[]>;
declaracaoSe(): Promise<Se>;
declaracaoEnquanto(): Promise<Enquanto>;
declaracaoPara(): Promise<Para>;
declaracaoEscolha(): Escolha;
declaracaoFazer(): Fazer;
declaracaoInteiros(): Promise<Var[]>;
/**
* Análise de uma declaração `leia()`. No VisuAlg, `leia()` aceita 1..N argumentos.
* @returns Uma declaração `Leia`.
*/
expressaoLeia(): Promise<Leia>;
corpoDaFuncao(tipo: string): Promise<FuncaoConstruto>;
resolverDeclaracaoForaDeBloco(): Promise<Declaracao | Declaracao[]>;
private validarSegmentoInicio;
analisar(retornoLexador: RetornoLexador<SimboloInterface>, hashArquivo: number): Promise<RetornoAvaliadorSintatico<Declaracao>>;
}
//# sourceMappingURL=avaliador-sintatico-portugol-ipt.d.ts.map