@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
103 lines • 7.09 kB
TypeScript
import { AcessoIndiceVariavel, AcessoIntervaloVariavel, AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, Agrupamento, AjudaComoConstruto, ArgumentoReferenciaFuncao, AtribuicaoPorIndice, Atribuir, Binario, Chamada, ComentarioComoConstruto, DefinirValor, Dicionario, Elvis, EnquantoComoConstruto, ExpressaoRegular, FazerComoConstruto, FimPara, FormatacaoEscrita, FuncaoConstruto, ImportarComoConstruto, Isto, Leia, ListaCompreensao, Literal, Logico, ParaCadaComoConstruto, ParaComoConstruto, ReferenciaFuncao, Separador, SeTernario, Super, TipoDe, Tupla, TuplaN, 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, CabecalhoPrograma, TendoComo, Comentario, TextoDocumentacao, Ajuda, Extensao, InterfaceDeclaracao } from '../declaracoes';
import { InicioAlgoritmo } from '../declaracoes/inicio-algoritmo';
import { ConstrutoInterface, VisitanteDeleguaInterface } from '../interfaces';
import { OpcoesFormatadorDeleguaInterface } from '../interfaces/formatador';
import { DelimitadorTextoFormatacao } from '../tipos';
/**
* 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 VisitanteDeleguaInterface {
indentacaoAtual: number;
quebraLinha: string;
tamanhoIndentacao: number;
codigoFormatado: string;
devePularLinha: boolean;
deveIndentar: boolean;
delimitadorTexto: DelimitadorTextoFormatacao;
constructor(quebraLinha: string, tamanhoIndentacao?: number, opcoes?: OpcoesFormatadorDeleguaInterface);
visitarDeclaracaoAjuda(declaracao: Ajuda): Promise<any> | void;
visitarDeclaracaoExtensao(declaracao: Extensao): Promise<any> | void;
visitarDeclaracaoInterface(declaracao: InterfaceDeclaracao): Promise<any> | void;
visitarExpressaoAjuda(expressao: AjudaComoConstruto): Promise<any> | void;
visitarExpressaoEnquanto(expressao: EnquantoComoConstruto): Promise<any> | void;
visitarExpressaoElvis(expressao: Elvis): Promise<any> | void;
visitarExpressaoFazer(expressao: FazerComoConstruto): Promise<any> | void;
visitarExpressaoListaCompreensao(listaCompreensao: ListaCompreensao): Promise<any> | void;
visitarExpressaoPara(expressao: ParaComoConstruto): Promise<any> | void;
visitarExpressaoParaCada(expressao: ParaCadaComoConstruto): Promise<any> | void;
visitarExpressaoSeTernario(expressao: SeTernario): Promise<any> | void;
private obterDelimitadorTexto;
visitarExpressaoTuplaN(expressao: TuplaN): Promise<any> | void;
visitarExpressaoAcessoIntervaloVariavel(expressao: AcessoIntervaloVariavel): Promise<any> | void;
visitarDeclaracaoTextoDocumentacao(declaracao: TextoDocumentacao): Promise<any> | void;
visitarExpressaoSeparador(expressao: Separador): Promise<any> | void;
visitarExpressaoComentario(expressao: ComentarioComoConstruto): Promise<any> | void;
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;
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;
private formatarParametro;
visitarExpressaoImportar(expressao: ImportarComoConstruto): 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 | ConstrutoInterface): 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