Sha256: 807d8d8261bc37a34b3b180e28077d72d2c9f1f6f8d8f4da8a67d60c1b644724
Contents?: true
Size: 811 Bytes
Versions: 3
Compression:
Stored size: 811 Bytes
Contents
require 'honey_format/columns' module HoneyFormat # Represents a header class Header attr_reader :column_names # @return [Header] a new instance of Header. # @param [Array] header array of strings. # @param [Array] valid array of symbols representing valid columns. # @raise [MissingCSVHeaderError] raised when header is missing (empty or nil). def initialize(header, valid: :all, converter: ConvertHeaderValue) if header.nil? || header.empty? fail(MissingCSVHeaderError, "CSV header can't be empty.") end @column_names = Sanitize.array(header) @columns = Columns.new(@column_names, valid: valid, converter: converter) end # Returns columns as array. # @return [Array] of columns. def columns @columns.to_a end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
honey_format-0.5.0 | lib/honey_format/header.rb |
honey_format-0.4.0 | lib/honey_format/header.rb |
honey_format-0.3.0 | lib/honey_format/header.rb |