Sha256: e7cd98cb8fbb5eca8f5ef84579f6cead3bf72f8c080ced323a6f4102a388a906
Contents?: true
Size: 1.61 KB
Versions: 2
Compression:
Stored size: 1.61 KB
Contents
module DataMapper module Support module Symbol class Operator attr_reader :value, :type, :options def initialize(value, type, options = nil) @value, @type, @options = value, type, options end def to_sym @value end end def gt Operator.new(self, :gt) end def gte Operator.new(self, :gte) end def lt Operator.new(self, :lt) end def lte Operator.new(self, :lte) end def not Operator.new(self, :not) end def eql Operator.new(self, :eql) end def like Operator.new(self, :like) end def in Operator.new(self, :in) end def select(klass = nil) Operator.new(self, :select, { :class => klass }) end def to_s @string_form || (@string_form = id2name.freeze) end def to_proc lambda { |value| value.send(self) } end def as_instance_variable_name @instance_variable_name_form || (@instance_variable_name_form = "@#{id2name}".freeze) end # Calculations: def count Operator.new(self, :count) end def max Operator.new(self, :max) end def avg Operator.new(self, :avg) end alias average avg def min Operator.new(self, :min) end end # module Symbol end # module Support end # module DataMapper class Symbol #:nodoc: include DataMapper::Support::Symbol end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
datamapper-0.1.0 | lib/data_mapper/support/symbol.rb |
datamapper-0.1.1 | lib/data_mapper/support/symbol.rb |