diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2010-08-06 14:57:54 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2010-08-06 14:57:54 -0700 |
commit | c7b4f12d9339504b58431de0145d9a965008e650 (patch) | |
tree | dc955e635e1fa388ba1ae1a733c69615d32c5a02 | |
parent | 06cc73cc9efbe2cacdbf8c6765ad6dab5a6e1aa0 (diff) | |
download | rails-c7b4f12d9339504b58431de0145d9a965008e650.tar.gz rails-c7b4f12d9339504b58431de0145d9a965008e650.tar.bz2 rails-c7b4f12d9339504b58431de0145d9a965008e650.zip |
removing parameter requirement for matching_attributes
-rw-r--r-- | lib/arel/algebra/relations/relation.rb | 14 | ||||
-rw-r--r-- | lib/arel/engines/sql/relations/table.rb | 9 |
2 files changed, 9 insertions, 14 deletions
diff --git a/lib/arel/algebra/relations/relation.rb b/lib/arel/algebra/relations/relation.rb index 4c739edb4d..9807cfb984 100644 --- a/lib/arel/algebra/relations/relation.rb +++ b/lib/arel/algebra/relations/relation.rb @@ -197,19 +197,5 @@ module Arel def skipped; nil end def sources; [] end def locked; [] end - - private - def matching_attributes(attribute) - unless @matching_attributes - @matching_attributes = Hash[attributes.map do |a| - [a.root, a] - end] - end - [@matching_attributes[attribute.root]] || [] - end - - def has_attribute?(attribute) - !matching_attributes(attribute).empty? - end end end diff --git a/lib/arel/engines/sql/relations/table.rb b/lib/arel/engines/sql/relations/table.rb index dd9000d660..b31df7a6d0 100644 --- a/lib/arel/engines/sql/relations/table.rb +++ b/lib/arel/engines/sql/relations/table.rb @@ -82,6 +82,15 @@ module Arel @columns = nil @attributes = Header.new([]) end + + private + def matching_attributes + @matching_attributes ||= Hash[attributes.map { |a| [a.root, true] }] + end + + def has_attribute?(attribute) + matching_attributes.key? attribute.root + end end end |