Sha256: 9004943e8cce2b227d3944f96153c0f0631565b5204f8549268e1b5a030c29d5
Contents?: true
Size: 604 Bytes
Versions: 1
Compression:
Stored size: 604 Bytes
Contents
# frozen_string_literal: true module DDTelemetry class LabelledCounter def initialize @counters = {} end def increment(label) get(label).increment end def get(label) @counters.fetch(label) { @counters[label] = Counter.new } end def empty? @counters.empty? end def value(label) get(label).value end def values @counters.each_with_object({}) do |(label, counter), res| res[label] = counter.value end end def map @counters.map { |(label, counter)| yield(label, counter) } end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ddtelemetry-1.0.0a1 | lib/ddtelemetry/labelled_counter.rb |