class Bmg::Sql::Processor::LimitOffset

Attributes

limit[R]
offset[R]

Public Class Methods

new(limit, offset, builder) click to toggle source
Calls superclass method Bmg::Sql::Processor::new
# File lib/bmg/sql/processor/limit_offset.rb, line 6
def initialize(limit, offset, builder)
  super(builder)
  @limit = limit
  @offset = offset
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/limit_offset.rb, line 20
def on_select_exp(sexpr)
  sexpr  = builder.from_self(sexpr) if obc = sexpr.limit_or_offset?
  limit_clause = builder.limit_clause(limit)
  offset_clause = builder.offset_clause(offset)
  sexpr.with_push(limit_clause, offset_clause)
end
on_set_operator(sexpr) click to toggle source
# File lib/bmg/sql/processor/limit_offset.rb, line 13
def on_set_operator(sexpr)
  apply(builder.from_self(sexpr))
end
Also aliased as: on_union, on_except, on_intersect
on_union(sexpr)
Alias for: on_set_operator