discourse/lib/freedom_patches/join_dependency.rb
2013-09-10 14:29:37 +10:00

23 lines
599 B
Ruby

# see PR: https://github.com/rails/rails/pull/12185
#
class ActiveRecord::Associations::JoinDependency::JoinPart
def extract_record(row)
# Used to be: Hash[column_names_with_alias.map{|cn, an| [cn, row[an]]}]
# that is fairly inefficient cause all the values are first copied
# in to an array only to construct the Hash
# This code is performance critical as it is called per row.
hash = {}
index = 0
while index < column_names_with_alias.length do
cn,an = column_names_with_alias[index]
hash[cn] = row[an]
index += 1
end
hash
end
end