@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
82 lines • 5.2 kB
TypeScript
import { AcessoIndiceVariavel, AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, Agrupamento, ArgumentoReferenciaFuncao, AtribuicaoPorIndice, Atribuir, Binario, Chamada, Construto, DefinirValor, Dicionario, ExpressaoRegular, FimPara, FormatacaoEscrita, FuncaoConstruto, Isto, Leia, Literal, Logico, ReferenciaFuncao, Super, TipoDe, Tupla, Unario, Variavel, Vetor } from '../construtos';
import { Classe, Const, ConstMultiplo, Expressao, FuncaoDeclaracao, Enquanto, Escolha, Escreva, Fazer, Importar, Para, ParaCada, Se, Tente, Var, VarMultiplo, Bloco, Continua, EscrevaMesmaLinha, Retorna, Sustar, Declaracao, Falhar, Aleatorio, CabecalhoPrograma, TendoComo, Comentario } from '../declaracoes';
import { InicioAlgoritmo } from '../declaracoes/inicio-algoritmo';
import { VisitanteComumInterface } from '../interfaces';
/**
* O formatador de código Delégua.
* Normalmente usado por IDEs, mas pode ser usado por linha de comando ou programaticamente.
*/
export declare class FormatadorDelegua implements VisitanteComumInterface {
indentacaoAtual: number;
quebraLinha: string;
tamanhoIndentacao: number;
codigoFormatado: string;
devePularLinha: boolean;
deveIndentar: boolean;
constructor(quebraLinha: string, tamanhoIndentacao?: number);
visitarExpressaoArgumentoReferenciaFuncao(expressao: ArgumentoReferenciaFuncao): void;
visitarExpressaoReferenciaFuncao(expressao: ReferenciaFuncao): void;
visitarExpressaoAcessoMetodo(expressao: AcessoMetodo): void;
visitarExpressaoAcessoPropriedade(expressao: AcessoPropriedade): void;
visitarDeclaracaoComentario(declaracao: Comentario): void | Promise<any>;
visitarDeclaracaoTendoComo(declaracao: TendoComo): void;
visitarDeclaracaoInicioAlgoritmo(declaracao: InicioAlgoritmo): Promise<any>;
visitarDeclaracaoCabecalhoPrograma(declaracao: CabecalhoPrograma): Promise<any>;
visitarExpressaoTupla(expressao: Tupla): any;
visitarDeclaracaoClasse(declaracao: Classe): void;
visitarDeclaracaoConst(declaracao: Const): any;
visitarDeclaracaoConstMultiplo(declaracao: ConstMultiplo): any;
visitarExpressaoDeAtribuicao(expressao: Atribuir): void;
visitarDeclaracaoDeExpressao(declaracao: Expressao): void;
visitarDeclaracaoDefinicaoFuncao(declaracao: FuncaoDeclaracao): void;
visitarDeclaracaoEnquanto(declaracao: Enquanto): void;
visitarDeclaracaoEscolha(declaracao: Escolha): void;
visitarDeclaracaoEscreva(declaracao: Escreva): void;
visitarDeclaracaoFazer(declaracao: Fazer): void;
visitarDeclaracaoImportar(declaracao: Importar): void;
visitarDeclaracaoPara(declaracao: Para): any;
visitarDeclaracaoParaCada(declaracao: ParaCada): any;
visitarDeclaracaoSe(declaracao: Se): void;
visitarDeclaracaoTente(declaracao: Tente): void;
visitarDeclaracaoVar(declaracao: Var): any;
visitarDeclaracaoVarMultiplo(declaracao: VarMultiplo): any;
visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel): void;
visitarExpressaoAcessoMetodoOuPropriedade(expressao: AcessoMetodoOuPropriedade): void;
visitarExpressaoAgrupamento(expressao: Agrupamento): any;
visitarExpressaoAtribuicaoPorIndice(expressao: AtribuicaoPorIndice): any;
visitarExpressaoAtribuicaoPorIndicesMatriz(expressao: any): Promise<any>;
visitarExpressaoAcessoElementoMatriz(expressao: any): void;
visitarExpressaoBinaria(expressao: Binario): void;
private formatarBlocoOuVetorDeclaracoes;
visitarExpressaoBloco(declaracao: Bloco): any;
visitarExpressaoContinua(declaracao?: Continua): any;
visitarExpressaoDeChamada(expressao: Chamada): void;
visitarDeclaracaoAleatorio(declaracao: Aleatorio): Promise<any>;
visitarExpressaoDefinirValor(expressao: DefinirValor): void;
visitarExpressaoDeVariavel(expressao: Variavel): void;
visitarExpressaoDicionario(expressao: Dicionario): void;
visitarExpressaoExpressaoRegular(expressao: ExpressaoRegular): any;
visitarDeclaracaoEscrevaMesmaLinha(declaracao: EscrevaMesmaLinha): void;
visitarExpressaoFalhar(expressao: Falhar): any;
visitarExpressaoFimPara(declaracao: FimPara): void;
visitarExpressaoFormatacaoEscrita(declaracao: FormatacaoEscrita): void;
visitarExpressaoFuncaoConstruto(expressao: FuncaoConstruto): void;
visitarExpressaoIsto(expressao: Isto): void;
visitarExpressaoLeia(expressao: Leia): any;
visitarExpressaoLiteral(expressao: Literal): void;
visitarExpressaoLogica(expressao: Logico): void;
visitarExpressaoRetornar(declaracao: Retorna): any;
visitarExpressaoSuper(expressao: Super): void;
visitarExpressaoSustar(declaracao?: Sustar): any;
visitarExpressaoTipoDe(expressao: TipoDe): any;
visitarExpressaoUnaria(expressao: Unario): void;
visitarExpressaoVetor(expressao: Vetor): void;
formatarDeclaracaoOuConstruto(declaracaoOuConstruto: Declaracao | Construto): void;
/**
* Devolve código formatado de acordo com os símbolos encontrados.
* @param {Declaracao[]} declaracoes Um vetor de declarações.
* @returns Código Delégua formatado.
*/
formatar(declaracoes: Declaracao[]): string;
}
//# sourceMappingURL=formatador-delegua.d.ts.map