BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bsl::Pair_Second< TYPE > Struct Template Reference

#include <bslstl_pair.h>

Inheritance diagram for bsl::Pair_Second< TYPE >:
bsl::pair< bsl::string, int > bsl::pair< KEY, VALUE > bsl::pair< int, unsigned >

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 &)=default
 
 Pair_Second (Pair_Second &&)=default
 
Pair_Secondoperator= (Pair_Second &&)=default
 
 ~Pair_Second ()=default
 

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.

Constructor & Destructor Documentation

◆ Pair_Second() [1/15]

template<class TYPE >
BSLS_KEYWORD_CONSTEXPR bsl::Pair_Second< TYPE >::Pair_Second ( )
inlineprotected

◆ Pair_Second() [2/15]

template<class TYPE >
bsl::Pair_Second< TYPE >::Pair_Second ( BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomNone   
)
inlineprotected

◆ Pair_Second() [3/15]

template<class TYPE >
bsl::Pair_Second< TYPE >::Pair_Second ( BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAtEnd   
)
inlineprotected

◆ Pair_Second() [4/15]

template<class TYPE >
bsl::Pair_Second< TYPE >::Pair_Second ( BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAllocatorArgT   
)
inlineprotected

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.

◆ Pair_Second() [5/15]

template<class TYPE >
BSLS_KEYWORD_CONSTEXPR bsl::Pair_Second< TYPE >::Pair_Second ( typename bsl::add_lvalue_reference< const TYPE >::type  value)
inlineexplicitprotected

Construct the second member from the specified non-modifiable value, without specifying an allocator.

◆ Pair_Second() [6/15]

template<class TYPE >
template<class PARAM >
BSLS_KEYWORD_CONSTEXPR bsl::Pair_Second< TYPE >::Pair_Second ( const PARAM &  value)
inlineexplicitprotected

◆ Pair_Second() [7/15]

template<class TYPE >
template<class PARAM >
BSLS_KEYWORD_CONSTEXPR bsl::Pair_Second< TYPE >::Pair_Second ( PARAM &  value)
inlineexplicitprotected

◆ Pair_Second() [8/15]

template<class TYPE >
template<class PARAM >
bsl::Pair_Second< TYPE >::Pair_Second ( const PARAM &  value,
BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomNone   
)
inlineprotected

◆ Pair_Second() [9/15]

template<class TYPE >
template<class PARAM >
bsl::Pair_Second< TYPE >::Pair_Second ( PARAM &  value,
BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomNone   
)
inlineprotected

◆ Pair_Second() [10/15]

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

◆ Pair_Second() [11/15]

template<class TYPE >
template<class PARAM >
bsl::Pair_Second< TYPE >::Pair_Second ( PARAM &  value,
BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAtEnd   
)
inlineprotected

◆ Pair_Second() [12/15]

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

◆ Pair_Second() [13/15]

template<class TYPE >
template<class PARAM >
bsl::Pair_Second< TYPE >::Pair_Second ( PARAM &  value,
BloombergLP::bslma::Allocator *  basicAllocator,
Pair_BslmaIdiomAllocatorArgT   
)
inlineprotected

◆ Pair_Second() [14/15]

template<class TYPE >
bsl::Pair_Second< TYPE >::Pair_Second ( const Pair_Second< TYPE > &  )
protecteddefault

◆ Pair_Second() [15/15]

template<class TYPE >
bsl::Pair_Second< TYPE >::Pair_Second ( Pair_Second< TYPE > &&  )
protecteddefault

◆ ~Pair_Second()

template<class TYPE >
bsl::Pair_Second< TYPE >::~Pair_Second ( )
protecteddefault

Member Function Documentation

◆ operator=()

template<class TYPE >
Pair_Second & bsl::Pair_Second< TYPE >::operator= ( Pair_Second< TYPE > &&  )
protecteddefault

Member Data Documentation

◆ second

template<class TYPE >
TYPE bsl::Pair_Second< TYPE >::second
protected

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