diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2010-07-29 12:13:26 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2010-07-29 12:13:26 -0700 |
commit | f87c8398d95f3f4b162a3a78299489189d7a0a45 (patch) | |
tree | 467e2fbfad76111a3739619427caaefdfdf4debf /lib/arel/algebra | |
parent | 068b184a59a98b4acdc63a2833c360199d138c1d (diff) | |
download | rails-f87c8398d95f3f4b162a3a78299489189d7a0a45.tar.gz rails-f87c8398d95f3f4b162a3a78299489189d7a0a45.tar.bz2 rails-f87c8398d95f3f4b162a3a78299489189d7a0a45.zip |
PERF: pushing christener down for faster method lookup and calling
Diffstat (limited to 'lib/arel/algebra')
-rw-r--r-- | lib/arel/algebra/relations/operations/project.rb | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/arel/algebra/relations/operations/project.rb b/lib/arel/algebra/relations/operations/project.rb index 649ec19713..1c24ae6caf 100644 --- a/lib/arel/algebra/relations/operations/project.rb +++ b/lib/arel/algebra/relations/operations/project.rb @@ -1,10 +1,11 @@ module Arel class Project < Compound - attr_reader :projections, :attributes + attr_reader :projections, :attributes, :christener def initialize(relation, projections) super(relation) @projections = projections.map { |p| p.bind(relation) } + @christener = Sql::Christener.new @attributes = Header.new(projections.map { |x| x.bind(self) }) end |