UNPKG

@designliquido/delegua

Version:

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

34 lines 1.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Vetor = void 0; const comentario_como_construto_1 = require("./comentario-como-construto"); const separador_1 = require("./separador"); class Vetor { constructor(hashArquivo, linha, valores, tipo) { this.linha = linha; this.hashArquivo = hashArquivo; this.tipo = tipo; this.valores = valores; } /** * Retorna apenas os elementos de dados do vetor, excluindo nós sintáticos * (Separador, comentários) que podem aparecer entre os elementos. */ get elementos() { return this.valores.filter((v) => v.constructor !== separador_1.Separador && v.constructor !== comentario_como_construto_1.ComentarioComoConstruto); } get tamanho() { return this.elementos.length; } async aceitar(visitante) { return await visitante.visitarExpressaoVetor(this); } paraTexto() { return `<vetor tipo=${this.tipo} valores=${this.valores.reduce((anterior, atual) => (anterior += atual.paraTexto()), '')} />`; } paraTextoSaida() { throw new Error('Método não implementado.'); } } exports.Vetor = Vetor; //# sourceMappingURL=vetor.js.map