Sha256: 2a039ec197a1344612d17b814256b3a2b6a9133826ffe8e0b951e709586e592e

Contents?: true

Size: 933 Bytes

Versions: 1

Compression:

Stored size: 933 Bytes

Contents

module Influxer
  module Calculations #:nodoc:
    CALCULATION_METHODS =
      [
        :count, :min, :max, :mean,
        :mode, :median, :distinct, :derivative,
        :stddev, :sum, :first, :last, :difference,
        :percentile, :histogram, :top, :bottom
      ]

    CALCULATION_METHODS.each do |name|
      class_eval <<-CODE, __FILE__, __LINE__ + 1
        def #{name}(val, option=nil)                                                   # def count(val)
          @values[:has_calculations] = true                                            #   @values[:has_calculations] = true
          select_values << "#{name}(\#\{val\}\#\{option ? ','+option.to_s : ''\})"     #   select_values << "count(\#\{val\})"
          self                                                                         #   self
        end                                                                            # end
      CODE
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
influxer-0.2.4 lib/influxer/metrics/relation/calculations.rb