|
| BSLMF_NESTED_TRAIT_DECLARATION_IF (Variant3, bslma::UsesBslmaAllocator, Traits::k_VARIANT_USES_BSLMA_ALLOCATOR) |
|
| BSLMF_NESTED_TRAIT_DECLARATION_IF (Variant3, bslmf::IsBitwiseCopyable, Traits::k_VARIANT_IS_BITWISE_COPYABLE) |
|
| BSLMF_NESTED_TRAIT_DECLARATION_IF (Variant3, bslmf::IsBitwiseMoveable, Traits::k_VARIANT_IS_BITWISE_MOVEABLE) |
|
| BSLMF_NESTED_TRAIT_DECLARATION (Variant3, HasPrintMethod) |
|
| Variant3 () |
|
template<class TYPE_OR_ALLOCATOR > |
| Variant3 (const TYPE_OR_ALLOCATOR &valueOrAllocator) |
|
template<class TYPE > |
| Variant3 (const TYPE &value, bslma::Allocator *basicAllocator) |
|
template<class TYPE > |
| Variant3 (bslmf::MovableRef< TYPE > value) |
|
template<class TYPE > |
| Variant3 (bslmf::MovableRef< TYPE > value, bslma::Allocator *basicAllocator) |
|
| Variant3 (const Variant3 &original, bslma::Allocator *basicAllocator=0) |
|
| Variant3 (bslmf::MovableRef< Variant3 > original) |
|
| Variant3 (bslmf::MovableRef< Variant3 > original, bslma::Allocator *basicAllocator) |
|
template<class TYPE > |
Variant3 & | operator= (const TYPE &value) |
|
template<class TYPE > |
Variant3 & | operator= (bslmf::MovableRef< TYPE > value) |
|
Variant3 & | operator= (const Variant3 &rhs) |
|
Variant3 & | operator= (bslmf::MovableRef< Variant3 > rhs) |
|
template<class TYPE > |
Variant3< A1, A2, A3 > & | operator= (const TYPE &value) |
|
template<class TYPE > |
Variant3< A1, A2, A3 > & | operator= (bslmf::MovableRef< TYPE > value) |
|
| BSLMF_NESTED_TRAIT_DECLARATION_IF (VariantImp, bslma::UsesBslmaAllocator, Traits::k_VARIANT_USES_BSLMA_ALLOCATOR) |
|
| BSLMF_NESTED_TRAIT_DECLARATION_IF (VariantImp, bslmf::IsBitwiseCopyable, Traits::k_VARIANT_IS_BITWISE_COPYABLE) |
|
| BSLMF_NESTED_TRAIT_DECLARATION_IF (VariantImp, bslmf::IsBitwiseMoveable, Traits::k_VARIANT_IS_BITWISE_MOVEABLE) |
|
| BSLMF_NESTED_TRAIT_DECLARATION (VariantImp, HasPrintMethod) |
|
| VariantImp () |
|
| VariantImp (const TYPE_OR_ALLOCATOR &valueOrAllocator) |
|
| VariantImp (const TYPE &value, bslma::Allocator *basicAllocator) |
|
| VariantImp (bslmf::MovableRef< TYPE > value) |
|
| VariantImp (bslmf::MovableRef< TYPE > value, bslma::Allocator *basicAllocator) |
|
| VariantImp (const VariantImp &original, bslma::Allocator *basicAllocator=0) |
|
| VariantImp (bslmf::MovableRef< VariantImp > original) |
|
| VariantImp (bslmf::MovableRef< VariantImp > original, bslma::Allocator *basicAllocator) |
|
| ~VariantImp () |
|
VariantImp & | operator= (const TYPE &value) |
|
VariantImp & | operator= (bslmf::MovableRef< TYPE > value) |
|
VariantImp & | operator= (const VariantImp &rhs) |
|
VariantImp & | operator= (bslmf::MovableRef< VariantImp > rhs) |
|
VariantImp< bslmf::TypeList3< A1, A2, A3 >::ListType > & | operator= (const TYPE &value) |
|
VariantImp< bslmf::TypeList3< A1, A2, A3 >::ListType > & | operator= (bslmf::MovableRef< TYPE > value) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | apply (VISITOR &visitor) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | apply (const VISITOR &visitor) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | apply (VISITOR &visitor, const TYPE &defaultValue) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | apply (const VISITOR &visitor, const TYPE &defaultValue) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | apply (VISITOR &visitor) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | apply (const VISITOR &visitor) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | apply (VISITOR &visitor, const TYPE &defaultValue) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | apply (const VISITOR &visitor, const TYPE &defaultValue) |
|
RET_TYPE | apply (VISITOR &visitor) |
|
RET_TYPE | apply (const VISITOR &visitor) |
|
RET_TYPE | apply (VISITOR &visitor, const TYPE &defaultValue) |
|
RET_TYPE | apply (const VISITOR &visitor, const TYPE &defaultValue) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | apply (VISITOR &visitor) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | apply (const VISITOR &visitor) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | apply (VISITOR &visitor, const TYPE &defaultValue) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | apply (const VISITOR &visitor, const TYPE &defaultValue) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | apply (VISITOR &visitor) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | apply (const VISITOR &visitor) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | apply (VISITOR &visitor, const TYPE &defaultValue) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | apply (const VISITOR &visitor, const TYPE &defaultValue) const |
|
RET_TYPE | apply (VISITOR &visitor) const |
|
RET_TYPE | apply (const VISITOR &visitor) const |
|
RET_TYPE | apply (VISITOR &visitor, const TYPE &defaultValue) const |
|
RET_TYPE | apply (const VISITOR &visitor, const TYPE &defaultValue) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | applyRaw (VISITOR &visitor) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | applyRaw (const VISITOR &visitor) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | applyRaw (VISITOR &visitor) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | applyRaw (const VISITOR &visitor) |
|
RET_TYPE | applyRaw (VISITOR &visitor) |
|
RET_TYPE | applyRaw (const VISITOR &visitor) |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | applyRaw (VISITOR &visitor) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==1, typenameVISITOR::ResultType >::type | applyRaw (const VISITOR &visitor) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | applyRaw (VISITOR &visitor) const |
|
bsl::enable_if< Variant_ReturnValueHelper< VISITOR >::value==0, void >::type | applyRaw (const VISITOR &visitor) const |
|
RET_TYPE | applyRaw (VISITOR &visitor) const |
|
RET_TYPE | applyRaw (const VISITOR &visitor) const |
|
VariantImp & | assign (const TYPE &value) |
|
VariantImp & | assign (bslmf::MovableRef< TYPE > value) |
|
VariantImp< bslmf::TypeList3< A1, A2, A3 >::ListType > & | assign (const TYPE &value) |
|
VariantImp< bslmf::TypeList3< A1, A2, A3 >::ListType > & | assign (bslmf::MovableRef< TYPE > value) |
|
VariantImp & | assignTo (const SOURCE_TYPE &value) |
|
VariantImp< bslmf::TypeList3< A1, A2, A3 >::ListType > & | assignTo (const SOURCE_TYPE &value) |
|
TYPE & | createInPlace (ARGS &&... arguments) |
|
void | reset () |
|
void | swap (VariantImp &other) |
|
TYPE & | the () |
|
const TYPE & | the () const |
|
bool | is () const |
|
bool | isUnset () const |
|
bsl::ostream & | print (bsl::ostream &stream, int level=0, int spacesPerLevel=4) const |
|
int | typeIndex () const |
|
const bsl::type_info & | typeInfo () const |
|
STREAM & | bdexStreamIn (STREAM &stream, int version) |
| DEPRECATED: Do not use.
|
|
int | maxSupportedBdexVersion () const |
| DEPRECATED: Do not use.
|
|
STREAM & | bdexStreamOut (STREAM &stream, int version) const |
| DEPRECATED: Do not use.
|
|
template<class A1, class A2, class A3>
class bdlb::Variant3< A1, A2, A3 >
This class is a "specialization" of Variant
for a fixed number (3) of types. Its 3 template arguments must all be specified (none are defaulted to bslmf::Nil
). It provides the same functionality as Variant<A1, A2, A3>
.