Method: Concurrent::CAtomicFixnum#decrement
- Defined in:
- ext/concurrent-ruby-ext/atomic_fixnum.c
#decrement(*args) ⇒ Object Also known as: down
54 55 56 57 58 59 60 61 62 63 |
# File 'ext/concurrent-ruby-ext/atomic_fixnum.c', line 54 VALUE method_atomic_fixnum_decrement(int argc, VALUE* argv, VALUE self) { long long value = NUM2LL((VALUE) DATA_PTR(self)); long long delta = 1; rb_check_arity(argc, 0, 1); if (argc == 1) { Check_Type(argv[0], T_FIXNUM); delta = NUM2LL(argv[0]); } return method_atomic_fixnum_value_set(self, LL2NUM(value - delta)); } |