STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | List of all members
atomic< _Ty > Struct Template Reference
Inheritance diagram for atomic< _Ty >:
_Atomic_base< _Ty, sizeof(_Ty)> _Atomic_impl< _Bytes >

Public Types

typedef _Atomic_base< _Ty, sizeof(_Ty)> _My_base
 
- Public Types inherited from _Atomic_base< _Ty, sizeof(_Ty)>
typedef _Atomic_impl< _Bytes > _Mybase
 
typedef _Mybase::_My_int _My_int
 
- Public Types inherited from _Atomic_impl< _Bytes >
typedef _Uint1_t _My_int
 

Public Member Functions

 atomic () _NOEXCEPT=default
 
 atomic (const atomic &)=delete
 
atomicoperator= (const atomic &)=delete
 
atomicoperator= (const atomic &) volatile=delete
 
constexpr atomic (_Ty _Val) _NOEXCEPT
 
_Ty operator= (_Ty _Right) volatile _NOEXCEPT
 
_Ty operator= (_Ty _Right) _NOEXCEPT
 
- Public Member Functions inherited from _Atomic_base< _Ty, sizeof(_Ty)>
constexpr _Atomic_base (_Ty _Val) _NOEXCEPT
 
 _Atomic_base () _NOEXCEPT=default
 
 _Atomic_base (const _Atomic_base &)=delete
 
_Atomic_baseoperator= (const _Atomic_base &)=delete
 
_Atomic_baseoperator= (const _Atomic_base &) volatile=delete
 
_Ty operator= (_Ty _Right) volatile _NOEXCEPT
 
_Ty operator= (_Ty _Right) _NOEXCEPT
 
bool is_lock_free () const volatile _NOEXCEPT
 
bool is_lock_free () const _NOEXCEPT
 
void store (_Ty _Value, memory_order _Order=memory_order_seq_cst) volatile _NOEXCEPT
 
void store (_Ty _Value, memory_order _Order=memory_order_seq_cst) _NOEXCEPT
 
_Ty load (memory_order _Order=memory_order_seq_cst) const volatile _NOEXCEPT
 
_Ty load (memory_order _Order=memory_order_seq_cst) const _NOEXCEPT
 
 operator _Ty () const volatile _NOEXCEPT
 
 operator _Ty () const _NOEXCEPT
 
_Ty exchange (_Ty _Value, memory_order _Order=memory_order_seq_cst) volatile _NOEXCEPT
 
_Ty exchange (_Ty _Value, memory_order _Order=memory_order_seq_cst) _NOEXCEPT
 
bool compare_exchange_weak (_Ty &_Exp, _Ty _Value, memory_order _Order1, memory_order _Order2) volatile _NOEXCEPT
 
bool compare_exchange_weak (_Ty &_Exp, _Ty _Value, memory_order _Order1, memory_order _Order2) _NOEXCEPT
 
bool compare_exchange_weak (_Ty &_Exp, _Ty _Value, memory_order _Order=memory_order_seq_cst) volatile _NOEXCEPT
 
bool compare_exchange_weak (_Ty &_Exp, _Ty _Value, memory_order _Order=memory_order_seq_cst) _NOEXCEPT
 
bool compare_exchange_strong (_Ty &_Exp, _Ty _Value, memory_order _Order1, memory_order _Order2) volatile _NOEXCEPT
 
bool compare_exchange_strong (_Ty &_Exp, _Ty _Value, memory_order _Order1, memory_order _Order2) _NOEXCEPT
 
bool compare_exchange_strong (_Ty &_Exp, _Ty _Value, memory_order _Order=memory_order_seq_cst) volatile _NOEXCEPT
 
bool compare_exchange_strong (_Ty &_Exp, _Ty _Value, memory_order _Order=memory_order_seq_cst) _NOEXCEPT
 
- Public Member Functions inherited from _Atomic_impl< _Bytes >
constexpr _Atomic_impl () _NOEXCEPT
 
bool _Is_lock_free () const volatile
 
void _Store (void *_Tgt, const void *_Src, memory_order _Order) volatile
 
void _Load (void *_Tgt, const void *_Src, memory_order _Order) const volatile
 
void _Exchange (void *_Left, void *_Right, memory_order _Order) volatile
 
bool _Compare_exchange_weak (void *_Tgt, void *_Exp, const void *_Value, memory_order _Order1, memory_order _Order2) volatile
 
bool _Compare_exchange_strong (void *_Tgt, void *_Exp, const void *_Value, memory_order _Order1, memory_order _Order2) volatile
 

Additional Inherited Members

- Public Attributes inherited from _Atomic_base< _Ty, sizeof(_Ty)>
_Ty _My_val
 

Member Typedef Documentation

template<class _Ty>
typedef _Atomic_base<_Ty, sizeof (_Ty)> atomic< _Ty >::_My_base

Constructor & Destructor Documentation

template<class _Ty>
atomic< _Ty >::atomic ( )
default
template<class _Ty>
atomic< _Ty >::atomic ( const atomic< _Ty > &  )
delete
template<class _Ty>
constexpr atomic< _Ty >::atomic ( _Ty  _Val)
inline
684  : _My_base(_Val)
685  { // construct from _Val
686  }
_Atomic_base< _Ty, sizeof(_Ty)> _My_base
Definition: atomic:674
_FwdIt const _Ty _Val
Definition: algorithm:1938

Member Function Documentation

template<class _Ty>
atomic& atomic< _Ty >::operator= ( const atomic< _Ty > &  )
delete
template<class _Ty>
atomic& atomic< _Ty >::operator= ( const atomic< _Ty > &  ) volatile
delete
template<class _Ty>
_Ty atomic< _Ty >::operator= ( _Ty  _Right) volatile
inline
689  { // assign from _Right
690  return (_My_base::operator=(_Right));
691  }
constexpr const _Ty &() _Right
Definition: algorithm:3723
template<class _Ty>
_Ty atomic< _Ty >::operator= ( _Ty  _Right)
inline
694  { // assign from _Right
695  return (_My_base::operator=(_Right));
696  }
constexpr const _Ty &() _Right
Definition: algorithm:3723

The documentation for this struct was generated from the following file: