class Rebel::Raw

Public Instance Methods

!=(n)
Alias for: ne
&(*clause)
Alias for: and
<(n)
Alias for: lt
<=(n)
Alias for: le
==(n)
Alias for: eq
>(n)
Alias for: gt
>=(n)
Alias for: ge
and(*clause) click to toggle source
# File lib/rebel/sql.rb, line 109
def and(*clause)
  sql.raw("#{self.parens?} AND #{sql.and_clause(*clause)}")
end
Also aliased as: &
as(n) click to toggle source
# File lib/rebel/sql.rb, line 81
def as(n)
  sql.raw(self + " AS #{sql.name(n)}")
end
as?(n) click to toggle source
# File lib/rebel/sql.rb, line 85
def as?(n)
  n ? as(n) : self
end
asc() click to toggle source
# File lib/rebel/sql.rb, line 101
def asc
  sql.raw(self + " ASC")
end
desc() click to toggle source
# File lib/rebel/sql.rb, line 105
def desc
  sql.raw(self + " DESC")
end
eq(n) click to toggle source
# File lib/rebel/sql.rb, line 119
def eq(n)
  sql.raw("#{self} = #{sql.name_or_value(n)}")
end
Also aliased as: ==
ge(n) click to toggle source
# File lib/rebel/sql.rb, line 152
def ge(n)
  sql.raw("#{self} >= #{sql.name_or_value(n)}")
end
Also aliased as: >=
gt(n) click to toggle source
# File lib/rebel/sql.rb, line 142
def gt(n)
  sql.raw("#{self} > #{sql.name_or_value(n)}")
end
Also aliased as: >
having(*clause) click to toggle source
# File lib/rebel/sql.rb, line 97
def having(*clause)
  sql.raw(self + " HAVING #{sql.and_clause(*clause)}")
end
in(*v) click to toggle source
# File lib/rebel/sql.rb, line 157
def in(*v)
  sql.raw("#{self} IN (#{sql.values(*v)})")
end
is(n) click to toggle source
# File lib/rebel/sql.rb, line 124
def is(n)
  sql.raw("#{self} IS #{sql.name_or_value(n)}")
end
is_not(n) click to toggle source
# File lib/rebel/sql.rb, line 133
def is_not(n)
  sql.raw("#{self} IS NOT #{sql.name_or_value(n)}")
end
le(n) click to toggle source
# File lib/rebel/sql.rb, line 147
def le(n)
  sql.raw("#{self} <= #{sql.name_or_value(n)}")
end
Also aliased as: <=
like(n) click to toggle source
# File lib/rebel/sql.rb, line 165
def like(n)
  sql.raw("#{self} LIKE #{sql.value(n)}")
end
lt(n) click to toggle source
# File lib/rebel/sql.rb, line 137
def lt(n)
  sql.raw("#{self} < #{sql.name_or_value(n)}")
end
Also aliased as: <
ne(n) click to toggle source
# File lib/rebel/sql.rb, line 128
def ne(n)
  sql.raw("#{self} != #{sql.name_or_value(n)}")
end
Also aliased as: !=
not_in(*v) click to toggle source
# File lib/rebel/sql.rb, line 161
def not_in(*v)
  sql.raw("#{self} NOT IN (#{sql.values(*v)})")
end
not_like(n) click to toggle source
# File lib/rebel/sql.rb, line 169
def not_like(n)
  sql.raw("#{self} NOT LIKE #{sql.value(n)}")
end
on(*clause) click to toggle source
# File lib/rebel/sql.rb, line 89
def on(*clause)
  sql.raw(self + " ON #{sql.and_clause(*clause)}")
end
on?(*clause) click to toggle source
# File lib/rebel/sql.rb, line 93
def on?(*clause)
  clause.any? ? on(*clause) : self
end
or(*clause) click to toggle source
# File lib/rebel/sql.rb, line 114
def or(*clause)
  sql.raw("#{self} OR #{sql.and_clause(*clause)}").wants_parens!
end
Also aliased as: |
parens() click to toggle source
# File lib/rebel/sql.rb, line 73
def parens
  sql.raw("(#{self})")
end
parens?() click to toggle source
# File lib/rebel/sql.rb, line 77
def parens?
  wants_parens? ? parens : self
end
wants_parens!() click to toggle source
# File lib/rebel/sql.rb, line 63
def wants_parens!
  @wants_parens = true
  self
end
wants_parens?() click to toggle source
# File lib/rebel/sql.rb, line 68
def wants_parens?
  @wants_parens = false unless instance_variable_defined?(:@wants_parens)
  @wants_parens
end
|(*clause)
Alias for: or

Private Instance Methods

sql() click to toggle source
# File lib/rebel/sql.rb, line 175
def sql
  @sql ||= Rebel::SQLQ
end