UNPKG

@designliquido/delegua

Version:

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

24 lines 1.18 kB
import { InterpretadorInterface } from '../../interfaces'; import { ArgumentoInterface } from '../argumento-interface'; import { Chamavel } from './chamavel'; import { DescritorTipoClasse } from './descritor-tipo-classe'; import { ObjetoDeleguaClasse } from './objeto-delegua-classe'; /** * Objeto retornado por `super()`. Carrega a instância atual e o ponto de partida * no OReM, permitindo herança cooperativa em chamadas do tipo `super().meuMetodo()`. * * Estende `Chamavel` para que `super()` seja resolvido pelo caminho normal de * chamada em `visitarExpressaoDeChamada`, retornando o próprio proxy para encadeamento. */ export declare class SuperProxy extends Chamavel { instancia: ObjetoDeleguaClasse; proximaClasse: DescritorTipoClasse; constructor(instancia: ObjetoDeleguaClasse, proximaClasse: DescritorTipoClasse); aridade(): number; /** * `super()` executa o construtor da próxima classe no OReM e retorna * o próprio proxy para permitir encadeamento: `super().meuMetodo()`. */ chamar(visitante: InterpretadorInterface, argumentos: ArgumentoInterface[]): Promise<SuperProxy>; } //# sourceMappingURL=super-proxy.d.ts.map