Class: Arel::StringJoin

Inherits:
Join
  • Object
show all
Defined in:
lib/arel/algebra/relations/operations/join.rb

Instance Attribute Summary

Attributes inherited from Join

#predicates, #relation1, #relation2

Attributes included from Relation

#count

Instance Method Summary collapse

Methods inherited from Join

#eval, #initialize, #join?, #name, #ons, #table_sql, #to_sql, #wheres

Methods included from Relation

#[], #alias, #bind, #call, #christener, #compiler, #delete, #each, #exclusion_predicate_sql, #externalize, #find_attribute_matching_name, #from, #from_clauses, #group_clauses, #groupings, #having_clauses, #havings, #inclusion_predicate_sql, #insert, #inserts, #join, #join?, #lock, #locked, #order_clauses, #orders, #outer_join, #position_of, #primary_key, #project, #projections, #select_clauses, #session, #skip, #skipped, #sources, #take, #taken, #to_sql, #update, #where, #where_clauses, #wheres

Constructor Details

This class inherits a constructor from Arel::Join

Instance Method Details

#attributesObject



95
96
97
# File 'lib/arel/algebra/relations/operations/join.rb', line 95

def attributes
  relation1.externalize.attributes
end

#engineObject



99
100
101
# File 'lib/arel/algebra/relations/operations/join.rb', line 99

def engine
  relation1.engine
end

#externalizable?Boolean

Returns:

  • (Boolean)


91
92
93
# File 'lib/arel/algebra/relations/operations/join.rb', line 91

def externalizable?
  relation1.externalizable?
end

#joins(environment, formatter = Sql::TableReference.new(environment)) ⇒ Object



87
88
89
# File 'lib/arel/algebra/relations/operations/join.rb', line 87

def joins(environment, formatter = Sql::TableReference.new(environment))
   [relation1.joins(environment), relation2].compact.join(" ")
end