Quick Links:

bal | bbl | bdl | bsl

Public Member Functions

bsltf::MoveOnlyAllocTestType Class Reference

#include <bsltf_moveonlyalloctesttype.h>

List of all members.

Public Member Functions

 BSLMF_NESTED_TRAIT_DECLARATION (MoveOnlyAllocTestType, bsl::is_nothrow_move_constructible)
 MoveOnlyAllocTestType (bslma::Allocator *basicAllocator=0)
 MoveOnlyAllocTestType (int data, bslma::Allocator *basicAllocator=0)
 MoveOnlyAllocTestType (bslmf::MovableRef< MoveOnlyAllocTestType > original) BSLS_KEYWORD_NOEXCEPT
 MoveOnlyAllocTestType (bslmf::MovableRef< MoveOnlyAllocTestType > original, bslma::Allocator *basicAllocator)
 ~MoveOnlyAllocTestType ()
MoveOnlyAllocTestTypeoperator= (bslmf::MovableRef< MoveOnlyAllocTestType > rhs)
void setData (int value)
void setMovedInto (MoveState::Enum value)
int data () const
bslma::Allocatorallocator () const
MoveState::Enum movedInto () const
MoveState::Enum movedFrom () const

Detailed Description

This unconstrained (value-semantic) attribute class that uses a bslma::Allocator to supply memory and defines the type trait bslma::UsesBslmaAllocator. This class is primarily provided to facilitate testing of templates by defining a simple type representative of user-defined types having an allocator. See the Attributes section under @DESCRIPTION in the component-level documentation for information on the class attributes.

See Component bsltf_moveonlyalloctesttype


Constructor & Destructor Documentation

bsltf::MoveOnlyAllocTestType::MoveOnlyAllocTestType ( bslma::Allocator basicAllocator = 0  )  [explicit]

Create a MoveOnlyAllocTestType object having the (default) attribute values:

          data() == 0

Optionally specify a basicAllocator used to supply memory. If basicAllocator is 0, the currently installed default allocator is used.

bsltf::MoveOnlyAllocTestType::MoveOnlyAllocTestType ( int  data,
bslma::Allocator basicAllocator = 0 
) [explicit]

Create a MoveOnlyAllocTestType object having the specified data attribute value. Optionally specify a basicAllocator used to supply memory. If basicAllocator is 0, the currently installed default allocator is used.

bsltf::MoveOnlyAllocTestType::MoveOnlyAllocTestType ( bslmf::MovableRef< MoveOnlyAllocTestType original  ) 
bsltf::MoveOnlyAllocTestType::MoveOnlyAllocTestType ( bslmf::MovableRef< MoveOnlyAllocTestType original,
bslma::Allocator basicAllocator 
)

Create a MoveAllocTestType object having the same value as the specified original object. Optionally specify a basicAllocator used to supply memory. If basicAllocator is 0, the currently installed default allocator is used. After construction, this object will be in a movedInto state, and original will be in a movedFrom state. No allocations shall occur (so no exception will be thrown) unless basicAllocator is not the currently installed default allocator.

bsltf::MoveOnlyAllocTestType::~MoveOnlyAllocTestType (  ) 

Destroy this object.


Member Function Documentation

bsltf::MoveOnlyAllocTestType::BSLMF_NESTED_TRAIT_DECLARATION ( MoveOnlyAllocTestType  ,
bsl::is_nothrow_move_constructible   
)
MoveOnlyAllocTestType& bsltf::MoveOnlyAllocTestType::operator= ( bslmf::MovableRef< MoveOnlyAllocTestType rhs  ) 

Assign to this object the value of the specified rhs object, and return a reference providing modifiable access to this object. If rhs is a reference to this object, there are no other effects; otherwise, the object referenced by rhs will be reset to a default constructed state, rhs shall be in a movedFrom state, and this object will be in a movedTo state. No allocations shall occur (so no exception will be thrown) unless this object and rhs have different allocators. Note that the moved-from state is specified, rather than "valid but unspecified", as this type is intended for verifying test drivers that want to ensure that moves occur correctly where expected.

void bsltf::MoveOnlyAllocTestType::setData ( int  value  ) 

Set the data attribute of this object to the specified value.

void bsltf::MoveOnlyAllocTestType::setMovedInto ( MoveState::Enum  value  ) 

Set the moved-into state of this object to the specified value.

int bsltf::MoveOnlyAllocTestType::data (  )  const

Return the value of the data attribute of this object.

bslma::Allocator* bsltf::MoveOnlyAllocTestType::allocator (  )  const

Return the allocator used by this object to supply memory.

MoveState::Enum bsltf::MoveOnlyAllocTestType::movedInto (  )  const

Return the move state of this object as target of a move operation.

MoveState::Enum bsltf::MoveOnlyAllocTestType::movedFrom (  )  const

Return the move state of this object as source of a move operation.


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