Sha256: 1b83bb227f4a517a32bea5fe0571818af17101a278ef5e1fe05e7616e4e83def

Contents?: true

Size: 572 Bytes

Versions: 4

Compression:

Stored size: 572 Bytes

Contents

# frozen_string_literal: true

module TrajectPlus
  module Macros
    # Macros for extracting values from CSV rows
    module Csv
      # @param header_or_index [String] the field header or index to accumulate
      def column(header_or_index, options = {})
        lambda do |row, accumulator, _context|
          return if row[header_or_index].to_s.empty?
          result = Array(row[header_or_index].to_s)
          result = TrajectPlus::Extraction.apply_extraction_options(result, options)
          accumulator.concat(result)
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
traject_plus-0.1.0 lib/traject_plus/macros/csv.rb
traject_plus-0.0.3 lib/traject_plus/macros/csv.rb
traject_plus-0.0.2 lib/traject_plus/macros/csv.rb
traject_plus-0.0.1 lib/traject_plus/macros/csv.rb