@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
55 lines • 1.97 kB
TypeScript
import { Declaracao } from '../declaracoes';
import { EstilizadorComumInterface, RegraEstilizacao, ViolacaoEstilo } from '../interfaces/estilizador-comum-interface';
/**
* Estilizador de código para Delégua.
* Aplica transformações no AST para enforcar convenções e melhorar qualidade do código.
*/
export declare class EstilizadorDelegua implements EstilizadorComumInterface {
regras: RegraEstilizacao[];
private violacoes;
private modoValidacao;
constructor(regras?: RegraEstilizacao[]);
adicionarRegra(regra: RegraEstilizacao): void;
removerRegra(nomeRegra: string): void;
/**
* Aplica as regras de estilização recursivamente em uma declaração.
* @param declaracao A declaração a ser estilizada.
* @returns A declaração estilizada.
*/
private estilizarDeclaracao;
/**
* Verifica se uma declaração foi modificada comparando propriedades relevantes.
*/
private declaracaoFoiModificada;
/**
* Clona uma declaração de forma superficial.
*/
private clonarDeclaracao;
/**
* Estiliza construtos dentro de uma declaração.
* @param declaracao A declaração cujos campos serão estilizados.
*/
private estilizarCamposDeclaracao;
/**
* Aplica as regras de estilização em um construto.
* @param construto O construto a ser estilizado.
* @returns O construto estilizado.
*/
private estilizarConstruto;
/**
* Estiliza campos dentro de um construto.
* @param construto O construto cujos campos serão estilizados.
*/
private estilizarCamposConstruto;
/**
* Verifica se um objeto é uma Declaração.
*/
private ehDeclaracao;
/**
* Verifica se um objeto é um Construto.
*/
private ehConstruto;
estilizar(declaracoes: Declaracao[]): Declaracao[];
validar(declaracoes: Declaracao[]): ViolacaoEstilo[];
}
//# sourceMappingURL=estilizador-delegua.d.ts.map