Module: ArOuterJoins

Defined in:
lib/ar_outer_joins.rb,
lib/ar_outer_joins/join.rb,
lib/ar_outer_joins/version.rb,
lib/ar_outer_joins/join_builder.rb

Defined Under Namespace

Classes: Join, JoinBuilder

Constant Summary collapse

VERSION =
"0.1.0"

Instance Method Summary collapse

Instance Method Details

#outer_joins(*joins) ⇒ Object



7
8
9
10
11
12
# File 'lib/ar_outer_joins.rb', line 7

def outer_joins(*joins)
  association_joins, regular_joins = joins.partition do |join|
    join.is_a?(Hash) or join.is_a?(Array) or join.is_a?(Symbol)
  end
  Join.new(self).apply(*association_joins).joins(*regular_joins)
end