Class: Supervision::Counter

Inherits:
Object
  • Object
show all
Defined in:
lib/supervision/counter.rb

Overview

A class responsible for measuring increments/decrements of value

Instance Method Summary collapse

Constructor Details

#initializeCounter

Create a Counter



9
10
11
# File 'lib/supervision/counter.rb', line 9

def initialize
  @count = Atomic.new(0)
end

Instance Method Details

#clearnil

Reset the counter

Returns:

  • (nil)


18
19
20
# File 'lib/supervision/counter.rb', line 18

def clear
  @count.set(0)
end

#decrement(decr = 1) ⇒ nil

Decrement counter

Parameters:

  • []

Returns:

  • (nil)


38
39
40
# File 'lib/supervision/counter.rb', line 38

def decrement(decr = 1)
  @count.update { |v| v + decr }
end

#increment(incr = 1) ⇒ nil

Increment counter

Returns:

  • (nil)


27
28
29
# File 'lib/supervision/counter.rb', line 27

def increment(incr = 1)
  @count.update { |v| v + incr }
end

#valueObject

Return the value



45
46
47
# File 'lib/supervision/counter.rb', line 45

def value
  @count.value
end