Method: Moneta::IncrementSupport#increment

Defined in:
lib/moneta/increment_support.rb

#increment(key, amount = 1, options = {}) ⇒ Object

Note:

Not every Moneta store implements this method, a NotImplementedError is raised if it is not supported.

Atomically increment integer value with key

This method also accepts negative amounts.

Parameters:

  • key (Object)
  • amount (Integer) (defaults to: 1)
  • options (Hash) (defaults to: {})

Options Hash (options):

  • :prefix (String)

    Prefix key (See Transformer)

  • Other (Object)

    options as defined by the adapters or middleware

Returns:

  • (Object)

    value from store



5
6
7
8
9
10
# File 'lib/moneta/increment_support.rb', line 5

def increment(key, amount = 1, options = {})
  existing = load(key, options)
  value = (existing == nil ? 0 : Integer(existing)) + amount
  store(key, value.to_s, options)
  value
end