Quick Links:

bal | bbl | bdl | bsl

Public Member Functions

bslalg::ConstructorProxy< OBJECT_TYPE > Class Template Reference

#include <bslalg_constructorproxy.h>

List of all members.

Public Member Functions

 ConstructorProxy (bslma::Allocator *basicAllocator)
template<class SOURCE_TYPE >
 ConstructorProxy (const ConstructorProxy< SOURCE_TYPE > &original, bslma::Allocator *basicAllocator)
template<class SOURCE_TYPE >
 ConstructorProxy (bslmf::MovableRef< ConstructorProxy< SOURCE_TYPE > > original, bslma::Allocator *basicAllocator)
template<class ARG01 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, typename bsl::enable_if< !ConstructorProxy_IsProxy< typename bsl::decay< ARG01 >::type >::value, bslma::Allocator >::type *basicAllocator)
template<class ARG01 , class ARG02 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, BSLS_COMPILERFEATURES_FORWARD_REF(ARG06) a06, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, BSLS_COMPILERFEATURES_FORWARD_REF(ARG06) a06, BSLS_COMPILERFEATURES_FORWARD_REF(ARG07) a07, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, BSLS_COMPILERFEATURES_FORWARD_REF(ARG06) a06, BSLS_COMPILERFEATURES_FORWARD_REF(ARG07) a07, BSLS_COMPILERFEATURES_FORWARD_REF(ARG08) a08, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, BSLS_COMPILERFEATURES_FORWARD_REF(ARG06) a06, BSLS_COMPILERFEATURES_FORWARD_REF(ARG07) a07, BSLS_COMPILERFEATURES_FORWARD_REF(ARG08) a08, BSLS_COMPILERFEATURES_FORWARD_REF(ARG09) a09, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, BSLS_COMPILERFEATURES_FORWARD_REF(ARG06) a06, BSLS_COMPILERFEATURES_FORWARD_REF(ARG07) a07, BSLS_COMPILERFEATURES_FORWARD_REF(ARG08) a08, BSLS_COMPILERFEATURES_FORWARD_REF(ARG09) a09, BSLS_COMPILERFEATURES_FORWARD_REF(ARG10) a10, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 , class ARG11 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, BSLS_COMPILERFEATURES_FORWARD_REF(ARG06) a06, BSLS_COMPILERFEATURES_FORWARD_REF(ARG07) a07, BSLS_COMPILERFEATURES_FORWARD_REF(ARG08) a08, BSLS_COMPILERFEATURES_FORWARD_REF(ARG09) a09, BSLS_COMPILERFEATURES_FORWARD_REF(ARG10) a10, BSLS_COMPILERFEATURES_FORWARD_REF(ARG11) a11, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 , class ARG11 , class ARG12 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, BSLS_COMPILERFEATURES_FORWARD_REF(ARG06) a06, BSLS_COMPILERFEATURES_FORWARD_REF(ARG07) a07, BSLS_COMPILERFEATURES_FORWARD_REF(ARG08) a08, BSLS_COMPILERFEATURES_FORWARD_REF(ARG09) a09, BSLS_COMPILERFEATURES_FORWARD_REF(ARG10) a10, BSLS_COMPILERFEATURES_FORWARD_REF(ARG11) a11, BSLS_COMPILERFEATURES_FORWARD_REF(ARG12) a12, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 , class ARG11 , class ARG12 , class ARG13 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, BSLS_COMPILERFEATURES_FORWARD_REF(ARG06) a06, BSLS_COMPILERFEATURES_FORWARD_REF(ARG07) a07, BSLS_COMPILERFEATURES_FORWARD_REF(ARG08) a08, BSLS_COMPILERFEATURES_FORWARD_REF(ARG09) a09, BSLS_COMPILERFEATURES_FORWARD_REF(ARG10) a10, BSLS_COMPILERFEATURES_FORWARD_REF(ARG11) a11, BSLS_COMPILERFEATURES_FORWARD_REF(ARG12) a12, BSLS_COMPILERFEATURES_FORWARD_REF(ARG13) a13, bslma::Allocator *basicAllocator)
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 , class ARG11 , class ARG12 , class ARG13 , class ARG14 >
 ConstructorProxy (BSLS_COMPILERFEATURES_FORWARD_REF(ARG01) a01, BSLS_COMPILERFEATURES_FORWARD_REF(ARG02) a02, BSLS_COMPILERFEATURES_FORWARD_REF(ARG03) a03, BSLS_COMPILERFEATURES_FORWARD_REF(ARG04) a04, BSLS_COMPILERFEATURES_FORWARD_REF(ARG05) a05, BSLS_COMPILERFEATURES_FORWARD_REF(ARG06) a06, BSLS_COMPILERFEATURES_FORWARD_REF(ARG07) a07, BSLS_COMPILERFEATURES_FORWARD_REF(ARG08) a08, BSLS_COMPILERFEATURES_FORWARD_REF(ARG09) a09, BSLS_COMPILERFEATURES_FORWARD_REF(ARG10) a10, BSLS_COMPILERFEATURES_FORWARD_REF(ARG11) a11, BSLS_COMPILERFEATURES_FORWARD_REF(ARG12) a12, BSLS_COMPILERFEATURES_FORWARD_REF(ARG13) a13, BSLS_COMPILERFEATURES_FORWARD_REF(ARG14) a14, bslma::Allocator *basicAllocator)
 ~ConstructorProxy ()
OBJECT_TYPE & object () BSLS_KEYWORD_NOEXCEPT
const OBJECT_TYPE & object () const BSLS_KEYWORD_NOEXCEPT

Detailed Description

template<class OBJECT_TYPE>
class bslalg::ConstructorProxy< OBJECT_TYPE >

This class acts as a proxy for constructing and destroying an object of parameterized OBJECT_TYPE, where OBJECT_TYPE may or may not use a bslma allocator for supplying memory. The constructors for this proxy class take a bslma::Allocator *. If OBJECT_TYPE has the bslma::UsesBslmaAllocator trait declared, then the supplied allocator will be used to construct the proxied object. Otherwise, the allocator is ignored.

See Component bslalg_constructorproxy


Constructor & Destructor Documentation

template<class OBJECT_TYPE>
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( bslma::Allocator basicAllocator  )  [explicit]

Construct a proxy, and a proxied object of parameterized OBJECT_TYPE. Use the specified basicAllocator to supply memory to the proxied object if OBJECT_TYPE declares the bslma::UsesBslmaAllocator trait, and ignore basicAllocator otherwise.

template<class OBJECT_TYPE>
template<class SOURCE_TYPE >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( const ConstructorProxy< SOURCE_TYPE > &  original,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class SOURCE_TYPE >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( bslmf::MovableRef< ConstructorProxy< SOURCE_TYPE > >  original,
bslma::Allocator basicAllocator 
)

Construct a proxy, and a proxied object of the parameterized OBJECT_TYPE having the value of the object of the parameterized SOURCE_TYPE held by the specified original proxy. Use the specified basicAllocator to supply memory to the proxied object if OBJECT_TYPE declares the bslma::UsesBslmaAllocator trait, and ignore basicAllocator otherwise. Note that a compilation error will result unless an instance of OBJECT_TYPE can be constructed from an instance of SOURCE_TYPE.

template<class OBJECT_TYPE>
template<class ARG01 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
typename bsl::enable_if< !ConstructorProxy_IsProxy< typename bsl::decay< ARG01 >::type >::value, bslma::Allocator >::type basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG06)  a06,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG06)  a06,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG07)  a07,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG06)  a06,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG07)  a07,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG08)  a08,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG06)  a06,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG07)  a07,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG08)  a08,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG09)  a09,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG06)  a06,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG07)  a07,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG08)  a08,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG09)  a09,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG10)  a10,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 , class ARG11 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG06)  a06,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG07)  a07,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG08)  a08,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG09)  a09,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG10)  a10,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG11)  a11,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 , class ARG11 , class ARG12 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG06)  a06,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG07)  a07,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG08)  a08,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG09)  a09,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG10)  a10,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG11)  a11,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG12)  a12,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 , class ARG11 , class ARG12 , class ARG13 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG06)  a06,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG07)  a07,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG08)  a08,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG09)  a09,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG10)  a10,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG11)  a11,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG12)  a12,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG13)  a13,
bslma::Allocator basicAllocator 
)
template<class OBJECT_TYPE>
template<class ARG01 , class ARG02 , class ARG03 , class ARG04 , class ARG05 , class ARG06 , class ARG07 , class ARG08 , class ARG09 , class ARG10 , class ARG11 , class ARG12 , class ARG13 , class ARG14 >
bslalg::ConstructorProxy< OBJECT_TYPE >::ConstructorProxy ( BSLS_COMPILERFEATURES_FORWARD_REF(ARG01)  a01,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG02)  a02,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG03)  a03,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG04)  a04,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG05)  a05,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG06)  a06,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG07)  a07,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG08)  a08,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG09)  a09,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG10)  a10,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG11)  a11,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG12)  a12,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG13)  a13,
BSLS_COMPILERFEATURES_FORWARD_REF(ARG14)  a14,
bslma::Allocator basicAllocator 
)

Construct a proxy, and a proxied object of the parameterized OBJECT_TYPE using the specified arguments a01 up to a14 of the respective parameterized ARG01 up to ARG14 types. Use the specified basicAllocator to supply memory to the proxied object if OBJECT_TYPE declares the bslma::UsesBslmaAllocator trait, and ignore basicAllocator otherwise. If basicAllocator is 0, the currently installed default allocator is used. Note that a compilation error will result unless OBJECT_TYPE has a constructor of signature compatible with OBJECT_TYPE(ARG01&&, ARG2&&, ...).

template<class OBJECT_TYPE>
bslalg::ConstructorProxy< OBJECT_TYPE >::~ConstructorProxy (  ) 

Destroy this proxy and the object held by this proxy.


Member Function Documentation

template<class OBJECT_TYPE>
OBJECT_TYPE& bslalg::ConstructorProxy< OBJECT_TYPE >::object (  ) 

Return a reference to the modifiable object held by this proxy.

Referenced by bdlf::Bind_BoundTupleValue< A14 >::value().

template<class OBJECT_TYPE>
const OBJECT_TYPE& bslalg::ConstructorProxy< OBJECT_TYPE >::object (  )  const

Return a reference to the non-modifiable object held by this proxy.


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