class Bmg::Sql::Processor::OrderBy

Attributes

ordering[R]

Public Class Methods

new(ordering, builder) click to toggle source
Calls superclass method Bmg::Sql::Processor::new
# File lib/bmg/sql/processor/order_by.rb, line 6
def initialize(ordering, builder)
  super(builder)
  @ordering = ordering
end

Public Instance Methods

on_except(sexpr)
Alias for: on_set_operator
on_intersect(sexpr)
Alias for: on_set_operator
on_select_exp(sexpr) click to toggle source
# File lib/bmg/sql/processor/order_by.rb, line 19
def on_select_exp(sexpr)
  if obc = sexpr.order_by_clause
    sexpr = builder.from_self(sexpr)
    call(sexpr)
  else
    needed = builder.order_by_clause(ordering, &sexpr.desaliaser)
    sexpr.dup.push(needed)
  end
end
on_set_operator(sexpr) click to toggle source
# File lib/bmg/sql/processor/order_by.rb, line 12
def on_set_operator(sexpr)
  call(builder.from_self(sexpr))
end
Also aliased as: on_union, on_except, on_intersect
on_union(sexpr)
Alias for: on_set_operator