Class: CopyMap

Inherits:
MapBase show all
Defined in:
lib/mrtoolkit.rb

Overview

Map just copies its fields

Instance Attribute Summary

Attributes inherited from Stage

#errors, #in_fields, #in_sep, #out_fields, #out_sep

Instance Method Summary collapse

Methods inherited from MapBase

#process_begin, #process_end, #run

Methods inherited from Stage

#catch_errors, #copy_struct, #emit, #emit_separator, #field, #field_separator, #new_input, #new_output, #prepare, #process_step, #write_out

Constructor Details

#initialize(*args) ⇒ CopyMap

Returns a new instance of CopyMap.



246
247
248
249
250
251
252
# File 'lib/mrtoolkit.rb', line 246

def initialize(*args)
  if args.size < 1
    @n = 0
  else
    @n = args[0].to_i - 1
  end
end

Instance Method Details

#declareObject



253
254
255
256
257
# File 'lib/mrtoolkit.rb', line 253

def declare
  (0..@n).each {|i| field "col#{i}"}

  (0..@n).each {|i| emit "col#{i}"}
end

#process(input, output) ⇒ Object



259
260
261
# File 'lib/mrtoolkit.rb', line 259

def process(input, output)
  copy_struct(input, output)
end