Sha256: 35fe78f269fb1374bb2d8755fad3ad007ed96422d48a2a18659e509a6d8142af

Contents?: true

Size: 512 Bytes

Versions: 3

Compression:

Stored size: 512 Bytes

Contents

# frozen_string_literal: true

require "csvbuilder/core/internal/concerns/column_shared"

module Csvbuilder
  class AttributeBase
    include ColumnShared

    attr_reader :column_name, :row_model

    def initialize(column_name, row_model)
      @column_name = column_name
      @row_model   = row_model
    end

    def formatted_value
      @formatted_value ||= row_model_class.format_cell(source_value, column_name, row_model.context)
    end

    def row_model_class
      row_model.class
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
csvbuilder-core-0.1.2 lib/csvbuilder/core/internal/attribute_base.rb
csvbuilder-core-0.1.1 lib/csvbuilder/core/internal/attribute_base.rb
csvbuilder-core-0.1.0 lib/csvbuilder/core/internal/attribute_base.rb