UNPKG

liquido

Version:

Conjunto de ferramentas para desenvolvimento de aplicações para a internet 100% em português

31 lines (30 loc) 2.08 kB
import { DeleguaFuncao } from '@designliquido/delegua/interpretador/estruturas'; import { FuncaoConstruto, Construto, Variavel, Binario, Literal, Chamada, AcessoMetodoOuPropriedade, AcessoIndiceVariavel } from '@designliquido/delegua/construtos'; import { ParametroInterface, SimboloInterface } from '@designliquido/delegua/interfaces'; import { Expressao, Retorna, Declaracao, Se, Bloco } from '@designliquido/delegua/declaracoes'; /** * O gerador de expressões é uma classe facilitadora para a criação de * objetos que normalmente são criados pelo Avaliador Sintático de * Delégua. */ export declare class GeradorExpressoes { gerarAcessoIndiceVariavel(variavel: string, indice: number | string): AcessoIndiceVariavel; gerarAcessoMetodoOuPropriedade(objeto: Variavel, metodoOuPropriedade: string): AcessoMetodoOuPropriedade; gerarBlocoEscopo(declaracoes: Declaracao[]): Bloco; gerarChamada(entidadeChamada: AcessoMetodoOuPropriedade, argumentos?: any[]): Chamada; gerarConstrutoBinario(ladoEsquerdo: Construto, operador: SimboloInterface, ladoDireito: Construto): Binario<string>; gerarConstrutoFuncao(parametros: ParametroInterface[], corpo: Declaracao[]): FuncaoConstruto; gerarDeclaracaoSe(condicao: Construto, caminhoEntao: Declaracao, caminhoSenao?: Declaracao): Se; gerarLiteral(valor: any): Literal; gerarMetodo(nomeMetodo: string, declaracao: FuncaoConstruto): DeleguaFuncao; gerarOperadorComparacao(tipo: 'maior' | 'menor' | 'maiorOuIgual' | 'menorOuIgual' | 'igual' | 'diferente'): SimboloInterface; gerarParametro(nome: string, tipo: string, abrangencia?: 'padrao' | 'multiplo'): ParametroInterface; gerarReferenciaVariavel(nomeVariavel: string): Variavel<string>; /** * Gera uma atribuição de valor em uma propriedade de classe. * Por exemplo, `isto.a = 1` seria algo como * `gerarAtribuicaoValorEmPropriedadeClasse('a', 1)`. */ gerarAtribuicaoValorEmPropriedadeClasse(nomePropriedade: string, valor: Construto): Expressao; gerarRetornoDeFuncao(nomeVariavel: string): Retorna; }