UNPKG

@designliquido/delegua

Version:

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

33 lines 1.35 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FuncaoDeclaracao = void 0; const declaracao_1 = require("./declaracao"); const geracao_identificadores_1 = require("../geracao-identificadores"); /** * Uma declaração de função. */ class FuncaoDeclaracao extends declaracao_1.Declaracao { constructor(simbolo, funcao, tipoRetorno = 'qualquer', decoradores = [], acesso = 'publico', estatico = false, abstrato = false, eObtenedor = false, eDefinidor = false, eFuncaoDeDecorador = false) { super(Number(simbolo.linha), simbolo.hashArquivo); this.id = (0, geracao_identificadores_1.uuidv4)(); this.simbolo = simbolo; this.funcao = funcao; this.tipo = tipoRetorno; this.decoradores = decoradores; this.acesso = acesso; this.estatico = estatico; this.abstrato = abstrato; this.eObtenedor = eObtenedor; this.eDefinidor = eDefinidor; this.eFuncaoDeDecorador = eFuncaoDeDecorador; } async aceitar(visitante) { return await visitante.visitarDeclaracaoDefinicaoFuncao(this); } paraTexto() { // TODO: Corpo. return `<declaração-função nome=${this.simbolo.lexema} tipo=${this.tipo} />`; } } exports.FuncaoDeclaracao = FuncaoDeclaracao; //# sourceMappingURL=funcao.js.map