Sha256: 74eb1487dc1bc8111421e35504b5bde72f4fcdcddb9dd76a3c4a7dde1642ecf5

Contents?: true

Size: 764 Bytes

Versions: 3

Compression:

Stored size: 764 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_utils/core_ext'
require 'eac_ruby_utils/acts_as_abstract'

module EacCli
  module RunnerWith
    module OutputList
      class BaseFormatter
        acts_as_abstract :to_output
        common_constructor :columns, :rows

        # @return [String]
        def build_column(column)
          column.to_s
        end

        # @return [Array<String>]
        def build_columns
          columns.map(&:to_s)
        end

        # @param row [Object]
        # @return [Object]
        def build_row(_row)
          raise_abstract_method __method__
        end

        # @return [Array<Hash<String, String>>]
        def build_rows
          rows.map { |row| build_row(row) }
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
eac_cli-0.40.1 lib/eac_cli/runner_with/output_list/base_formatter.rb
eac_cli-0.40.0 lib/eac_cli/runner_with/output_list/base_formatter.rb
eac_cli-0.39.0 lib/eac_cli/runner_with/output_list/base_formatter.rb