class Nexter::Query
Attributes
columns[R]
compass[R]
reorders[R]
wheres[R]
Public Class Methods
new(columns, goto)
click to toggle source
# File lib/nexter/query.rb, line 5 def initialize(columns, goto) @columns = columns @compass = Compass.new(goto) @reorders = [] iterate end
Public Instance Methods
iterate()
click to toggle source
# File lib/nexter/query.rb, line 12 def iterate @wheres = [] columns = @columns.dup while column = columns.pop do section = Section.new(columns) direction = Direction.new(column, compass) reorders.unshift("#{column[:col]} #{direction.compass.redirection}") next unless direction.slice @wheres << "#{section.sql}#{section.blank? ? '' : ' AND '}#{direction.sql}" end # binding.pry @wheres.compact! end
Also aliased as: sql