mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
13a20317ff
should support ordering
44 lines
No EOL
869 B
Ruby
44 lines
No EOL
869 B
Ruby
module Arel
|
|
module Nodes
|
|
|
|
class InfixOperation < Binary
|
|
include Arel::Expressions
|
|
include Arel::Predications
|
|
include Arel::OrderPredications
|
|
include Arel::AliasPredication
|
|
include Arel::Math
|
|
|
|
attr_reader :operator
|
|
|
|
def initialize operator, left, right
|
|
super(left, right)
|
|
@operator = operator
|
|
end
|
|
end
|
|
|
|
class Multiplication < InfixOperation
|
|
def initialize left, right
|
|
super(:*, left, right)
|
|
end
|
|
end
|
|
|
|
class Division < InfixOperation
|
|
def initialize left, right
|
|
super(:/, left, right)
|
|
end
|
|
end
|
|
|
|
class Addition < InfixOperation
|
|
def initialize left, right
|
|
super(:+, left, right)
|
|
end
|
|
end
|
|
|
|
class Subtraction < InfixOperation
|
|
def initialize left, right
|
|
super(:-, left, right)
|
|
end
|
|
end
|
|
|
|
end
|
|
end |