#include <bslalg_nothrowmovablewrapper.h>
List of all members.
Classes |
struct | DummyAllocator |
Public Types |
typedef bsl::conditional
< bslma::UsesBslmaAllocator
< TYPE >::value,
bsl::allocator< char >
, DummyAllocator >::type | allocator_type |
typedef TYPE | ValueType |
Public Member Functions |
| BSLMF_NESTED_TRAIT_DECLARATION (NothrowMovableWrapper, bsl::is_nothrow_move_constructible) |
| BSLMF_NESTED_TRAIT_DECLARATION_IF (NothrowMovableWrapper, bslma::UsesBslmaAllocator, bslma::UsesBslmaAllocator< TYPE >::value) |
| BSLMF_NESTED_TRAIT_DECLARATION_IF (NothrowMovableWrapper, bslmf::UsesAllocatorArgT, bslma::UsesBslmaAllocator< TYPE >::value) |
| BSLMF_NESTED_TRAIT_DECLARATION_IF (NothrowMovableWrapper, bslmf::IsBitwiseMoveable, bslmf::IsBitwiseMoveable< TYPE >::value) |
| NothrowMovableWrapper () |
| NothrowMovableWrapper (bsl::allocator_arg_t, const allocator_type &alloc) |
| NothrowMovableWrapper (const TYPE &val) |
| NothrowMovableWrapper (bsl::allocator_arg_t, const allocator_type &alloc, const TYPE &val) |
| NothrowMovableWrapper (bslmf::MovableRef< TYPE > val) |
| NothrowMovableWrapper (bsl::allocator_arg_t, const allocator_type &alloc, bslmf::MovableRef< TYPE > val) |
| NothrowMovableWrapper (const NothrowMovableWrapper &original) |
| NothrowMovableWrapper (bsl::allocator_arg_t, const allocator_type &alloc, const NothrowMovableWrapper &original) |
| NothrowMovableWrapper (bslmf::MovableRef< NothrowMovableWrapper > original) BSLS_KEYWORD_NOEXCEPT |
| NothrowMovableWrapper (bsl::allocator_arg_t, const allocator_type &alloc, bslmf::MovableRef< NothrowMovableWrapper > original) |
| ~NothrowMovableWrapper () |
ValueType & | unwrap () |
| operator ValueType & () |
allocator_type | get_allocator () const |
ValueType const & | unwrap () const |
| operator ValueType const & () const |
Detailed Description
template<class TYPE>
class bslalg::NothrowMovableWrapper< TYPE >
An object of this type wraps a value of the specified TYPE
, and provides no other functionality other than returning the wrapped object. The move constructor is guaranteed not to throw, even if the move constructor for TYPE
has no such guarantee. The user is thus asserting that the move constructor for the wrapped object will not throw, even if it is allowed to. Constraints: this class can be instantiated on object types only, i.e., not references, arrays, or function types (though function pointers are OK).
See Component bslalg_nothrowmovablewrapper
Member Typedef Documentation
Member Function Documentation
The documentation for this class was generated from the following file: