|
| Atomic ()=default |
|
| Atomic (Atomic const &)=delete |
|
constexpr | Atomic (T value) |
|
auto | operator= (Atomic const &) -> Atomic &=delete |
|
auto | operator= (Atomic const &) volatile -> Atomic &=delete |
|
constexpr void | store (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) |
|
constexpr void | store (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) volatile |
|
constexpr auto | load (MemoryOrder order=MemoryOrder::SequentialConsistency) const -> T |
|
constexpr auto | load (MemoryOrder order=MemoryOrder::SequentialConsistency) const volatile -> T |
|
constexpr auto | exchange (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) -> T |
|
constexpr auto | exchange (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) volatile -> T |
|
constexpr auto | compare_exchange_weak (T &expected, T desired, MemoryOrder success, MemoryOrder failure) -> bool |
|
constexpr auto | compare_exchange_weak (T &expected, T desired, MemoryOrder success, MemoryOrder failure) volatile -> bool |
|
constexpr auto | compare_exchange_weak (T &expected, T desired, MemoryOrder order=MemoryOrder::SequentialConsistency) -> bool |
|
constexpr auto | compare_exchange_weak (T &expected, T desired, MemoryOrder order=MemoryOrder::SequentialConsistency) volatile -> bool |
|
constexpr auto | compare_exchange_strong (T &expected, T desired, MemoryOrder success, MemoryOrder failure) -> bool |
|
constexpr auto | compare_exchange_strong (T &expected, T desired, MemoryOrder success, MemoryOrder failure) volatile -> bool |
|
constexpr auto | compare_exchange_strong (T &expected, T desired, MemoryOrder order=MemoryOrder::SequentialConsistency) -> bool |
|
constexpr auto | compare_exchange_strong (T &expected, T desired, MemoryOrder order=MemoryOrder::SequentialConsistency) volatile -> bool |
|
constexpr auto | fetch_add (DeltaType delta, MemoryOrder order=MemoryOrder::SequentialConsistency) -> T requires(concepts::Integral< T >||concepts::Pointer< T >) |
|
constexpr auto | fetch_add (DeltaType delta, MemoryOrder order=MemoryOrder::SequentialConsistency) volatile -> T requires(concepts::Integral< T >||concepts::Pointer< T >) |
|
constexpr auto | fetch_sub (DeltaType delta, MemoryOrder order=MemoryOrder::SequentialConsistency) -> T requires(concepts::Integral< T >||concepts::Pointer< T >) |
|
constexpr auto | fetch_sub (DeltaType delta, MemoryOrder order=MemoryOrder::SequentialConsistency) volatile -> T requires(concepts::Integral< T >||concepts::Pointer< T >) |
|
constexpr auto | fetch_and (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) -> T requires(concepts::Integral< T >) |
|
constexpr auto | fetch_and (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) volatile -> T requires(concepts::Integral< T >) |
|
constexpr auto | fetch_or (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) -> T requires(concepts::Integral< T >) |
|
constexpr auto | fetch_or (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) volatile -> T requires(concepts::Integral< T >) |
|
constexpr auto | fetch_xor (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) -> T requires(concepts::Integral< T >) |
|
constexpr auto | fetch_xor (T value, MemoryOrder order=MemoryOrder::SequentialConsistency) volatile -> T requires(concepts::Integral< T >) |
|