class Cloaca::Operations::ChangeColumnDelimiter

Public Class Methods

new( input:, new_column_delimiter:, old_column_delimiter:, output:, ** ) click to toggle source
# File lib/cloaca/operations/change_column_delimiter.rb, line 4
def initialize(
  input:,
  new_column_delimiter:,
  old_column_delimiter:,
  output:,
  **
)
  @old_column_delimiter = old_column_delimiter
  @new_column_delimiter = new_column_delimiter
  @col_sep_changed = (old_column_delimiter != new_column_delimiter)
  @input = input
  @output = output
end

Public Instance Methods

run!() click to toggle source
# File lib/cloaca/operations/change_column_delimiter.rb, line 18
def run!
  @input.each_with_index do |line, index|
    @output << (@col_sep_changed ? line.split(@old_column_delimiter).join(@new_column_delimiter) : line)
  end
end