Module: BabySqueel::ActiveRecord::Calculations

Defined in:
lib/baby_squeel/active_record/calculations.rb

Instance Method Summary collapse

Instance Method Details

#averaging(&block) ⇒ Object



21
22
23
# File 'lib/baby_squeel/active_record/calculations.rb', line 21

def averaging(&block)
  average Calculation.new(DSL.evaluate(self, &block))
end

#counting(&block) ⇒ Object



13
14
15
# File 'lib/baby_squeel/active_record/calculations.rb', line 13

def counting(&block)
  count Calculation.new(DSL.evaluate(self, &block))
end

#maximizing(&block) ⇒ Object



29
30
31
# File 'lib/baby_squeel/active_record/calculations.rb', line 29

def maximizing(&block)
  maximum Calculation.new(DSL.evaluate(self, &block))
end

#minimizing(&block) ⇒ Object



25
26
27
# File 'lib/baby_squeel/active_record/calculations.rb', line 25

def minimizing(&block)
  minimum Calculation.new(DSL.evaluate(self, &block))
end

#plucking(&block) ⇒ Object



7
8
9
10
11
# File 'lib/baby_squeel/active_record/calculations.rb', line 7

def plucking(&block)
  nodes = Array.wrap(DSL.evaluate(self, &block))
  nodes = nodes.map { |node| Pluck.decorate(node) }
  pluck(*nodes)
end

#summing(&block) ⇒ Object



17
18
19
# File 'lib/baby_squeel/active_record/calculations.rb', line 17

def summing(&block)
  sum Calculation.new(DSL.evaluate(self, &block))
end