Module: MsPivot
- Defined in:
- lib/ms_pivot/row.rb,
lib/ms_pivot/table.rb,
lib/ms_pivot/measure.rb
Defined Under Namespace
Constant Summary collapse
- APPEND =
Built-in measures
Measure.new do |current_value, new_value| current_value ||= [] current_value << new_value end
- SUM =
Measure.new do |current_value, new_value| current_value ||= 0 current_value + new_value end
- MIN =
Measure.new do |current_value, new_value| if current_value.nil? new_value else new_value < current_value ? new_value : current_value end end
- MAX =
Measure.new do |current_value, new_value| if current_value.nil? new_value else new_value > current_value ? new_value : current_value end end
- COUNT =
Measure.new do |current_value, new_value| current_value ||= 0 current_value + 1 end
- AVG =
Measure.new(Proc.new { |value| value[1] / value[0].to_f }) do |current_value, new_value| current_value ||= Struct.new(:count, :sum).new(0,0) current_value.count += 1 current_value.sum += new_value current_value end