@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
37 lines • 1.77 kB
TypeScript
import { Chamavel } from './chamavel';
import { EspacoMemoria } from '../espaco-memoria';
import { DescritorTipoClasse } from './descritor-tipo-classe';
import { InterpretadorInterface } from '../../interfaces';
import { ObjetoDeleguaClasse } from './objeto-delegua-classe';
import { ComentarioComoConstruto, FuncaoConstruto } from '../../construtos';
import { ArgumentoInterface } from '../argumento-interface';
/**
* Qualquer função declarada em código é uma DeleguaFuncao.
*/
export declare class DeleguaFuncao extends Chamavel {
nome: string | null;
declaracao: FuncaoConstruto;
eInicializador: boolean;
instancia: any;
documentacao?: ComentarioComoConstruto;
/** Classe que declarou este método; usado para calcular a posição no OReM em chamadas a `super()`. */
classeDefinidora: DescritorTipoClasse | null;
constructor(nome: string | null, declaracao: FuncaoConstruto, instancia?: any, eInicializador?: boolean);
aridade(): number;
/**
* Método utilizado por Delégua para representar esta função quando impressa.
* @returns {string} A representação da função como texto.
*/
paraTexto(): string;
/**
* Método utilizado pelo VSCode para inspecionar esta função em depuração.
* @returns {string} A representação da função como texto.
*/
toString(): string;
private resolverParametrosEspalhados;
protected resolverAmbiente(argumentos: Array<ArgumentoInterface>): EspacoMemoria;
chamar(visitante: InterpretadorInterface, argumentos: Array<ArgumentoInterface>): Promise<any>;
funcaoPorMetodoDeClasse(instancia: ObjetoDeleguaClasse): DeleguaFuncao;
funcaoPorExtensao(valor: any): DeleguaFuncao;
}
//# sourceMappingURL=delegua-funcao.d.ts.map