Class: ActiveMapper::Adapter::ActiveRecord::Query::Expression

Inherits:
Object
  • Object
show all
Defined in:
lib/active_mapper/adapter/active_record/query/expression.rb

Direct Known Subclasses

AndExpression, NotExpression, OrExpression

Instance Method Summary collapse

Constructor Details

#initialize(attribute, comparator, value) ⇒ Expression

Returns a new instance of Expression.



6
7
8
9
10
# File 'lib/active_mapper/adapter/active_record/query/expression.rb', line 6

def initialize(attribute, comparator, value)
  @attribute = attribute
  @comparator = comparator
  @value = value
end

Instance Method Details

#!Object



16
17
18
# File 'lib/active_mapper/adapter/active_record/query/expression.rb', line 16

def !
  NotExpression.new(self)
end

#&(expression) ⇒ Object



20
21
22
# File 'lib/active_mapper/adapter/active_record/query/expression.rb', line 20

def &(expression)
  AndExpression.new(self, expression)
end

#to_sqlObject



12
13
14
# File 'lib/active_mapper/adapter/active_record/query/expression.rb', line 12

def to_sql
  @attribute.send(@comparator, @value)
end

#|(expression) ⇒ Object



24
25
26
# File 'lib/active_mapper/adapter/active_record/query/expression.rb', line 24

def |(expression)
  OrExpression.new(self, expression)
end