Fixed-arity specialization of Variant for 16 types.
Declared in <bdlb_variant.h>
template<
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12,
class A13,
class A14,
class A15,
class A16>
class Variant16
: public VariantImp<bslmf::TypeList16<A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16>::ListType>
Its 16 template arguments must all be specified (none are defaulted to bslmf::Nil). It provides the same functionality as `Variant<A1, A2, ..., A16>`.
| Name | Description |
|---|---|
VariantImp<bslmf::TypeList16<A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16>::ListType> | This class provides the implementation of Variant (except for the creators) given a list of template parameter TYPES. |
| Name | Description |
|---|---|
Variant16 [constructor] | Constructors |
operator= | Assignment operators |
apply | apply overloads |
applyRaw | applyRaw overloads |
assign | Assign the specified TYPE value to this object. |
assignTo | Assign value converted to TYPE to this object. |
bdexStreamIn | DEPRECATED: Do not use. |
bdexStreamOut | DEPRECATED: Do not use. |
createInPlace | Emplace a TYPE instance constructed from arguments. |
is | Return whether this variant currently holds a TYPE value. |
isUnset | Return whether this variant currently holds no value. |
maxSupportedBdexVersion | DEPRECATED: Do not use. |
print | Format this object to the specified output stream. |
reset | Destroy the current value held by this variant (if any), and reset this variant to the unset state. |
swap | Swap the value of this object with other. |
the | the overloads |
typeIndex | Return the 1-based index of the held type, or 0 if unset. |
typeInfo | Return typeid(void). |
operator BloombergLP::bslmf::NestedTraitDeclaration<Variant16, HasPrintMethod> | Nested trait declaration for bdlb::HasPrintMethod. |
operator BloombergLP::bslmf::NestedTraitDeclaration<Variant16, IsBitwiseCopyable, Traits::k_VARIANT_IS_BITWISE_COPYABLE> | Nested trait declaration for bslmf::IsBitwiseCopyable. |
operator BloombergLP::bslmf::NestedTraitDeclaration<Variant16, IsBitwiseMoveable, Traits::k_VARIANT_IS_BITWISE_MOVEABLE> | Nested trait declaration for bslmf::IsBitwiseMoveable. |
operator BloombergLP::bslmf::NestedTraitDeclaration<Variant16, UsesBslmaAllocator, Traits::k_VARIANT_USES_BSLMA_ALLOCATOR> | Nested trait declaration for bslma::UsesBslmaAllocator. |
operator BloombergLP::bslmf::NestedTraitDeclaration<VariantImp, HasPrintMethod> | Nested trait declaration for bdlb::HasPrintMethod. |
operator BloombergLP::bslmf::NestedTraitDeclaration<VariantImp, IsBitwiseCopyable, Traits::k_VARIANT_IS_BITWISE_COPYABLE> | Nested trait declaration for bslmf::IsBitwiseCopyable. |
operator BloombergLP::bslmf::NestedTraitDeclaration<VariantImp, IsBitwiseMoveable, Traits::k_VARIANT_IS_BITWISE_MOVEABLE> | Nested trait declaration for bslmf::IsBitwiseMoveable. |
operator BloombergLP::bslmf::NestedTraitDeclaration<VariantImp, UsesBslmaAllocator, Traits::k_VARIANT_USES_BSLMA_ALLOCATOR> | Nested trait declaration for bslma::UsesBslmaAllocator. |
| Name | Description |
|---|---|
operator!= | Return whether lhs and rhs do not have the same value. |
operator== | Grant the equality comparison operator access to this class's private members. |
operator== | Return whether lhs and rhs have the same value. |
swap | Swap the values of the specified a and b objects. |