"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.AcessoElementoMatriz = void 0;
class AcessoElementoMatriz {
    constructor(hashArquivo, entidadeChamada, indicePrimario, indiceSegundario, simboloFechamento) {
        this.linha = entidadeChamada.linha;
        this.hashArquivo = hashArquivo;
        this.entidadeChamada = entidadeChamada;
        this.indicePrimario = indicePrimario;
        this.indiceSecundario = indiceSegundario;
        this.simboloFechamento = simboloFechamento;
    }
    async aceitar(visitante) {
        return await visitante.visitarExpressaoAcessoElementoMatriz(this);
    }
    paraTexto() {
        return (`<acesso-elemento-matriz entidadeChamada=${this.entidadeChamada.paraTexto()} ` +
            `indicePrimário=${this.indicePrimario.paraTexto()} ` +
            `indiceSecundário=${this.indiceSecundario.paraTexto()} ` +
            `/>`);
    }
    paraTextoSaida() {
        throw new Error('Método não implementado.');
    }
}
exports.AcessoElementoMatriz = AcessoElementoMatriz;
//# sourceMappingURL=acesso-elemento-matriz.js.map