Class: ActiveRecord::Summarize::CalculationImplementation::Sum

Inherits:
Base
  • Object
show all
Defined in:
lib/activerecord/summarize/calculation_implementation.rb

Instance Attribute Summary

Attributes inherited from Base

#column, #relation

Instance Method Summary collapse

Methods inherited from Base

#initialize, #select_column_arel_node

Constructor Details

This class inherits a constructor from ActiveRecord::Summarize::CalculationImplementation::Base

Instance Method Details

#function_arel_node_classObject



59
60
61
# File 'lib/activerecord/summarize/calculation_implementation.rb', line 59

def function_arel_node_class
  Arel::Nodes::Sum
end

#initialObject



63
64
65
# File 'lib/activerecord/summarize/calculation_implementation.rb', line 63

def initial
  0
end

#reducer(memo, v) ⇒ Object



67
68
69
# File 'lib/activerecord/summarize/calculation_implementation.rb', line 67

def reducer(memo, v)
  memo + (v || 0)
end

#unmatch_arel_nodeObject



55
56
57
# File 'lib/activerecord/summarize/calculation_implementation.rb', line 55

def unmatch_arel_node
  0 # Adding zero to a sum does nothing
end