Module: Arel::Math

Included in:
Attributes::Attribute, Nodes::Count, Nodes::InfixOperation, Nodes::UnaryOperation
Defined in:
lib/arel/math.rb

Instance Method Summary collapse

Instance Method Details

#&(other) ⇒ Object



20
21
22
# File 'lib/arel/math.rb', line 20

def &(other)
  Arel::Nodes::Grouping.new(Arel::Nodes::BitwiseAnd.new(self, other))
end

#*(other) ⇒ Object



4
5
6
# File 'lib/arel/math.rb', line 4

def *(other)
  Arel::Nodes::Multiplication.new(self, other)
end

#+(other) ⇒ Object



8
9
10
# File 'lib/arel/math.rb', line 8

def +(other)
  Arel::Nodes::Grouping.new(Arel::Nodes::Addition.new(self, other))
end

#-(other) ⇒ Object



12
13
14
# File 'lib/arel/math.rb', line 12

def -(other)
  Arel::Nodes::Grouping.new(Arel::Nodes::Subtraction.new(self, other))
end

#/(other) ⇒ Object



16
17
18
# File 'lib/arel/math.rb', line 16

def /(other)
  Arel::Nodes::Division.new(self, other)
end

#<<(other) ⇒ Object



32
33
34
# File 'lib/arel/math.rb', line 32

def <<(other)
  Arel::Nodes::Grouping.new(Arel::Nodes::BitwiseShiftLeft.new(self, other))
end

#>>(other) ⇒ Object



36
37
38
# File 'lib/arel/math.rb', line 36

def >>(other)
  Arel::Nodes::Grouping.new(Arel::Nodes::BitwiseShiftRight.new(self, other))
end

#^(other) ⇒ Object



28
29
30
# File 'lib/arel/math.rb', line 28

def ^(other)
  Arel::Nodes::Grouping.new(Arel::Nodes::BitwiseXor.new(self, other))
end

#|(other) ⇒ Object



24
25
26
# File 'lib/arel/math.rb', line 24

def |(other)
  Arel::Nodes::Grouping.new(Arel::Nodes::BitwiseOr.new(self, other))
end

#~@Object



40
41
42
# File 'lib/arel/math.rb', line 40

def ~@
  Arel::Nodes::BitwiseNot.new(self)
end