class ActiveRecord::Associations::JoinDependency::Aliases
:nodoc:
def column_alias(node, column)
def column_alias(node, column) @alias_cache[node][column] end
def column_aliases(node)
def column_aliases(node) @name_and_alias_cache[node] end
def columns
def columns @tables.flat_map { |t| t.column_aliases } end
def initialize(tables)
def initialize(tables) @tables = tables @alias_cache = tables.each_with_object({}) { |table,h| h[table.node] = table.columns.each_with_object({}) { |column,i| i[column.name] = column.alias } } @name_and_alias_cache = tables.each_with_object({}) { |table,h| h[table.node] = table.columns.map { |column| [column.name, column.alias] } } end