Sha256: d9ad327e9a0e796e79d3bee99649e355198adfb09d1dc6612337809ad8d2644e

Contents?: true

Size: 421 Bytes

Versions: 6

Compression:

Stored size: 421 Bytes

Contents

module Intercom
  module Traits
    module IncrementableAttributes

      def increment(key, value=1)
        mark_field_as_changed!(:increments)
        increments[key] ||= 0
        increments[key] += value
      end

      private

      def increments
        @increments ||= {}
      end

      def increments=(hash)
        mark_field_as_changed!(:increments)
        @increments = hash
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
intercom-2.1.1 lib/intercom/traits/incrementable_attributes.rb
intercom-2.1.0 lib/intercom/traits/incrementable_attributes.rb
intercom-2.0.3 lib/intercom/traits/incrementable_attributes.rb
intercom-2.0.2 lib/intercom/traits/incrementable_attributes.rb
intercom-2.0.1 lib/intercom/traits/incrementable_attributes.rb
intercom-2.0.0 lib/intercom/traits/incrementable_attributes.rb