# File lib/arel/algebra/attributes/attribute.rb, line 9 def initialize(relation, name, options = {}) @relation = relation # this is actually a table (I think) @name = name @alias = options[:alias] @ancestor = options[:ancestor] @history = [self] + (@ancestor ? @ancestor.history : []) @root = @history.last @original_relation = nil @original_attribute = nil # FIXME: I think we can remove this eventually @hash = name.hash + root.relation.class.hash end