UNPKG

@designliquido/delegua

Version:

Linguagem de programação simples e moderna usando português estruturado.

45 lines 1.73 kB
import { Declaracao } from '../../declaracoes'; import { Construto } from '../../construtos'; import { RegraEstilizacao } from '../../interfaces/estilizador-comum-interface'; import { TipoParadigma } from '../../lexador/mapeamento-paradigmas'; /** * Opções para a regra de paradigma consistente. */ export interface OpcoesParadigmaConsistente { /** * Paradigma a ser enforçado. * - 'imperativo': Aceita apenas formas imperativas (escreva, leia, etc.) * - 'infinitivo': Aceita apenas formas infinitivas (escrever, ler, etc.) * - 'ambos': Aceita ambas as formas (padrão) */ paradigma?: TipoParadigma; } /** * Regra que enforça consistência de paradigma em palavras reservadas. * * Em português, instruções podem ser expressas no imperativo (escreva, leia) * ou no infinitivo (escrever, ler). Esta regra permite escolher um paradigma * único para manter a consistência do código. * * Exemplos: * - Modo imperativo: `escreva()`, `leia()`, `tente { } pegue { }` * - Modo infinitivo: `escrever()`, `ler()`, `tentar { } pegar { }` */ export declare class RegraParadigmaConsistente implements RegraEstilizacao { nome: string; descricao: string; private opcoes; private mapaLexemaParaParadigma; constructor(opcoes?: OpcoesParadigmaConsistente); aplicarEmDeclaracao(declaracao: Declaracao): Declaracao; aplicarEmConstruto(construto: Construto): Construto; /** * Processa uma declaração que tem um símbolo específico. */ private processarDeclaracaoComSimbolo; /** * Processa um construto que tem um símbolo específico. */ private processarConstrutoComSimbolo; } //# sourceMappingURL=paradigma-consistente.d.ts.map