From 6d44a1349ef23f8969eeec91b0facb0adf6df52b Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Wed, 28 Jul 2010 15:32:53 -0700 Subject: PERF: fewer objects, less lambdas, less memory --- lib/arel/algebra/header.rb | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/arel/algebra/header.rb b/lib/arel/algebra/header.rb index 3b8aea3422..dc779d53c3 100644 --- a/lib/arel/algebra/header.rb +++ b/lib/arel/algebra/header.rb @@ -4,9 +4,7 @@ module Arel def initialize(attrs = []) @attributes = attrs.to_ary - @names = Hash.new do |h,k| - h[k] = @attributes.detect { |a| a.named?(k) } - end + @names = {} end def each @@ -55,7 +53,8 @@ module Arel end def find_by_name(name) - @names[name.to_sym] + k = name.to_sym + @names[k] ||= @attributes.detect { |a| a.named?(k) } end def find_by_attribute(attr) -- cgit v1.2.3