|
| basic_atomic_gcc ()=default |
|
| ~basic_atomic_gcc ()=default |
|
| basic_atomic_gcc (const self_type &)=delete |
|
basic_atomic_gcc & | operator= (const self_type &)=delete |
|
basic_atomic_gcc & | operator= (const self_type &) volatile=delete |
|
constexpr | basic_atomic_gcc (value_type value) |
|
value_type | get () |
|
void | store (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | load (memory_order order=memory_order::SeqCst) const |
|
value_type | exchange (value_type v, memory_order order=memory_order::SeqCst) |
|
bool | compare_exchange_n (value_type &expected, value_type &desired, bool b, memory_order order=memory_order::SeqCst) |
|
bool | compare_exchange_t (value_type &expected, value_type &desired, memory_order order=memory_order::SeqCst) |
|
bool | compare_exchange_f (value_type &expected, value_type &desired, memory_order order=memory_order::SeqCst) |
|
bool | compare_exchange_strong (value_type &expected, value_type &desired, memory_order order=memory_order::SeqCst) |
|
bool | compare_exchange_weak (value_type &expected, value_type &desired, memory_order order=memory_order::SeqCst) |
|
value_type | fetch_add (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | fetch_sub (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | fetch_and (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | fetch_or (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | fetch_xor (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | add_fetch (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | sub_fetch (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | and_fetch (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | or_fetch (value_type v, memory_order order=memory_order::SeqCst) |
|
value_type | xor_fetch (value_type v, memory_order order=memory_order::SeqCst) |
|
bool | is_lock_free () const |
|
bool | is_lock_free () const volatile |
|
| operator value_type () const |
|
| operator value_type () const volatile |
|
value_type | operator++ (int) |
|
value_type | operator-- (int) |
|
value_type | operator++ () |
|
value_type | operator-- () |
|
value_type | operator++ (int) volatile |
|
value_type | operator-- (int) volatile |
|
value_type | operator++ () volatile |
|
value_type | operator-- () volatile |
|
value_type | operator+= (value_type v) |
|
value_type | operator-= (value_type v) |
|
value_type | operator&= (value_type v) |
|
value_type | operator|= (value_type v) |
|
value_type | operator^= (value_type v) |
|
value_type | operator= (value_type v) |
|
value_type | operator= (value_type v) volatile |
|
template<typename T>
struct mn::basic_atomic_gcc< T >
Generic atomic type, primary class template.
- Template Parameters
-
T | Type to be made atomic, must be trivally copyable. |