require 'arc-furnace/source' module ArcFurnace class Transform < Source private_attr_reader :source def initialize(source:) @source = source end def value value = source.value.deep_dup transform(value) if value end def transform(row) row end delegate [:empty?, :advance] => :source end end