Quick Links:

bal | bbl | bdl | bsl

Protected Member Functions | Protected Attributes

bsl::Pair_Second< TYPE > Struct Template Reference
[Component bslstl_pair]

#include <bslstl_pair.h>

List of all members.

Protected Member Functions

BSLS_KEYWORD_CONSTEXPR Pair_Second ()
 Pair_Second (BloombergLP::bslma::Allocator *basicAllocator, Pair_BslmaIdiomNone)
 Pair_Second (BloombergLP::bslma::Allocator *basicAllocator, Pair_BslmaIdiomAtEnd)
 Pair_Second (BloombergLP::bslma::Allocator *basicAllocator, Pair_BslmaIdiomAllocatorArgT)
BSLS_KEYWORD_CONSTEXPR Pair_Second (typename bsl::add_lvalue_reference< const TYPE >::type value)
template<class PARAM >
BSLS_KEYWORD_CONSTEXPR Pair_Second (const PARAM &value)
template<class PARAM >
BSLS_KEYWORD_CONSTEXPR Pair_Second (PARAM &value)
template<class PARAM >
 Pair_Second (const PARAM &value, BloombergLP::bslma::Allocator *basicAllocator, Pair_BslmaIdiomNone)
template<class PARAM >
 Pair_Second (PARAM &value, BloombergLP::bslma::Allocator *basicAllocator, Pair_BslmaIdiomNone)
template<class PARAM >
 Pair_Second (const PARAM &value, BloombergLP::bslma::Allocator *basicAllocator, Pair_BslmaIdiomAtEnd)
template<class PARAM >
 Pair_Second (PARAM &value, BloombergLP::bslma::Allocator *basicAllocator, Pair_BslmaIdiomAtEnd)
template<class PARAM >
 Pair_Second (const PARAM &value, BloombergLP::bslma::Allocator *basicAllocator, Pair_BslmaIdiomAllocatorArgT)
template<class PARAM >
 Pair_Second (PARAM &value, BloombergLP::bslma::Allocator *basicAllocator, Pair_BslmaIdiomAllocatorArgT)
 Pair_Second (const Pair_Second &)
 Pair_Second (Pair_Second &&)
Pair_Secondoperator= (Pair_Second &&)
 ~Pair_Second ()

Protected Attributes

TYPE second

Detailed Description

template<class TYPE>
struct bsl::Pair_Second< TYPE >

This component-private class holds the second data member of a pair and constructs it appropriately.

See Component bslstl_pair


Constructor & Destructor Documentation

template<class TYPE>
bsl::Pair_Second< TYPE >::Pair_Second ( BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAtEnd   
) [protected]
template<class TYPE>
bsl::Pair_Second< TYPE >::Pair_Second ( BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAllocatorArgT   
) [protected]

Construct the second member of a pair, using the specified basicAllocator to supply memory. Note that exactly one of these three constructors is enabled at compile-time for (template parameter) type TYPE based on the following respective criteria: 1) TYPE does not support bslma-style allocators, 2) TYPE takes a bslma-style allocator as the last constructor argument, and 3) TYPE takes a bslma-style allocator as the second constructor argument preceded by bsl::allocator_arg.

template<class TYPE>
template<class PARAM >
bsl::Pair_Second< TYPE >::Pair_Second ( const PARAM &  value,
BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAtEnd   
) [protected]
template<class TYPE>
template<class PARAM >
bsl::Pair_Second< TYPE >::Pair_Second ( PARAM &  value,
BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAtEnd   
) [protected]
template<class TYPE>
template<class PARAM >
bsl::Pair_Second< TYPE >::Pair_Second ( const PARAM &  value,
BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAllocatorArgT   
) [protected]
template<class TYPE>
template<class PARAM >
bsl::Pair_Second< TYPE >::Pair_Second ( PARAM &  value,
BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAllocatorArgT   
) [protected]

Construct the second member of a pair from the specified forwarding reference value, using the specified basicAllocator to supply memory. This function (perfectly) forwards value to the constructor of (template parameter) TYPE. Note that exactly one of these three constructors is enabled at compile-time for (template parameter) type TYPE based on the following respective criteria: 1) TYPE does not support bslma-style allocators, 2) TYPE takes a bslma-style allocator as the last constructor argument, and 3) TYPE takes a bslma-style allocator as the second constructor argument preceded by bsl::allocator_arg.


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