Sha256: 4babd62fb229e3ab8276b304f068d4722b322458f1223d965236bde5d7c95427
Contents?: true
Size: 879 Bytes
Versions: 15
Compression:
Stored size: 879 Bytes
Contents
module Arel module Nodes class Function < Arel::Nodes::Node include Arel::Predications include Arel::WindowPredications attr_accessor :expressions, :alias, :distinct def initialize expr, aliaz = nil super() @expressions = expr @alias = aliaz && SqlLiteral.new(aliaz) @distinct = false end def as aliaz self.alias = SqlLiteral.new(aliaz) self end def hash [@expressions, @alias, @distinct].hash end def eql? other self.class == other.class && self.expressions == other.expressions && self.alias == other.alias && self.distinct == other.distinct end end %w{ Sum Exists Max Min Avg }.each do |name| const_set(name, Class.new(Function)) end end end
Version data entries
15 entries across 15 versions & 6 rubygems