Sha256: 46228836b8ea8dcf1195d5c45305040f25b15f664a6b0fd5e5c86025eebaab3a

Contents?: true

Size: 588 Bytes

Versions: 1

Compression:

Stored size: 588 Bytes

Contents

module Metrics
  module Instruments
    class Counter

      attr_reader :units

      def initialize(options = {})
        @value = 0
      end

      def inc(value = 1)
        @value += value
      end
      alias_method :incr, :inc

      def dec(value = 1)
        @value -= value
      end
      alias_method :decr, :dec

      def clear
        @value = 0
      end

      def to_i
        @value.to_i
      end

      def to_s
        @value.to_s
      end

      def as_json(*_)
        @value
      end

      def to_json(*_)
        as_json.to_json
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ruby-metrics-0.9.0 lib/ruby-metrics/instruments/counter.rb