# File lib/arel/nodes/case.rb, line 27 def else expression @default = Else.new Nodes.build_quoted(expression) self end
# File lib/arel/nodes/case.rb, line 43 def eql? other self.class == other.class && self.case == other.case && self.conditions == other.conditions && self.default == other.default end
# File lib/arel/nodes/case.rb, line 39 def hash [@case, @conditions, @default].hash end
# File lib/arel/nodes/case.rb, line 32 def initialize_copy other super @case = @case.clone if @case @conditions = @conditions.map { |x| x.clone } @default = @default.clone if @default end
# File lib/arel/nodes/case.rb, line 22 def then expression @conditions.last.right = Nodes.build_quoted(expression) self end
# File lib/arel/nodes/case.rb, line 17 def when condition, expression = nil @conditions << When.new(Nodes.build_quoted(condition), expression) self end
# File lib/arel/nodes/case.rb, line 11 def initialize expression = nil, default = nil @case = expression @conditions = [] @default = default end