次のようなコードがある場合、それを機能させるにはどうすればよいですか?
config = {} #options for faster csv
input_file = "foo.csv"
# can be in any class or module
def count_item_groups(items)
results = Hash.new(0)
(items || []).each do |current|
results[current.to_s] += 1
end
results
end
row_value_iterator = FasterCSV.foreach(input_file, config) do |row|
yield return row[1]
end
result = count_item_groups(row_value_iterator)
このようなコードに対して
def do_it_all
results = Hash.new(0)
FasterCSV.foreach(input_file, config) do |row|
results[row[1].to_s] += 1
end
results
end
結果は、row[1] 値のキーを持つハッシュになります。yield return
Rubyには存在しませんが、Rubyはこのタイプのコードを処理できると確信しています.