Ion
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 > Class Template Reference

The Variant class is similar to boost::variant. More...

#include "variant.h"

Inheritance diagram for ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >:
Collaboration diagram for ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >:

Classes

struct  ArrayAccessor
 ArrayAccessor lets callers use operator[] with a Variant in most simple cases, as opposed to using the SetValueAt(i) and GetValueAt(i) functions above. More...
 

Public Types

typedef T1 Type1
 Expose the defined types as typedefs. More...
 
typedef T2 Type2
 
typedef T3 Type3
 
typedef T4 Type4
 
typedef T5 Type5
 
typedef T6 Type6
 
typedef T7 Type7
 
typedef T8 Type8
 
typedef T9 Type9
 
typedef T10 Type10
 
typedef T11 Type11
 
typedef T12 Type12
 
typedef T13 Type13
 
typedef T14 Type14
 
typedef T15 Type15
 
typedef T16 Type16
 
typedef T17 Type17
 
typedef T18 Type18
 
typedef T19 Type19
 
typedef T20 Type20
 
typedef T21 Type21
 
typedef T22 Type22
 
typedef T23 Type23
 
typedef T24 Type24
 
typedef T25 Type25
 
typedef T26 Type26
 
typedef T27 Type27
 
typedef T28 Type28
 
typedef T29 Type29
 
typedef T30 Type30
 
typedef T31 Type31
 
typedef T32 Type32
 
typedef T33 Type33
 
typedef T34 Type34
 
typedef T35 Type35
 
typedef T36 Type36
 
typedef T37 Type37
 
typedef T38 Type38
 
typedef T39 Type39
 
typedef T40 Type40
 

Public Member Functions

 Variant ()
 The default constructor defines a Variant with an invalid tag and leaves the Variant value in an undefined state. More...
 
 ~Variant ()
 
void Set (const T1 &value)
 Each version of Set() sets the variant to contain a value of one of the defined types or to a type that is derived from or otherwise convertible to one of those types. More...
 
void Set (const T2 &value)
 
void Set (const T3 &value)
 
void Set (const T4 &value)
 
void Set (const T5 &value)
 
void Set (const T6 &value)
 
void Set (const T7 &value)
 
void Set (const T8 &value)
 
void Set (const T9 &value)
 
void Set (const T10 &value)
 
void Set (const T11 &value)
 
void Set (const T12 &value)
 
void Set (const T13 &value)
 
void Set (const T14 &value)
 
void Set (const T15 &value)
 
void Set (const T16 &value)
 
void Set (const T17 &value)
 
void Set (const T18 &value)
 
void Set (const T19 &value)
 
void Set (const T20 &value)
 
void Set (const T21 &value)
 
void Set (const T22 &value)
 
void Set (const T23 &value)
 
void Set (const T24 &value)
 
void Set (const T25 &value)
 
void Set (const T26 &value)
 
void Set (const T27 &value)
 
void Set (const T28 &value)
 
void Set (const T29 &value)
 
void Set (const T30 &value)
 
void Set (const T31 &value)
 
void Set (const T32 &value)
 
void Set (const T33 &value)
 
void Set (const T34 &value)
 
void Set (const T35 &value)
 
void Set (const T36 &value)
 
void Set (const T37 &value)
 
void Set (const T38 &value)
 
void Set (const T39 &value)
 
void Set (const T40 &value)
 
template<typename T >
void InitArray (const base::AllocatorPtr &allocator, size_t count)
 Sets the type of this variant to be an array of count Ts. More...
 
void CopyFrom (const Variant &from)
 Copies the variant's type and value from another instance. More...
 
template<typename T >
bool Is () const
 Returns true if this contains an object of type T, which must be an exact match with one of the template parameter types. More...
 
template<typename T >
bool IsArrayOf () const
 Returns true if this contains an array of type T, which must be an exact match with one of the template parameter types. More...
 
template<typename T >
bool IsAssignableTo () const
 Returns true if this contains an object of type T or an object which a T can be assigned to. More...
 
template<typename T >
bool ElementsAssignableTo () const
 Similar to above but only returns true if the elements of the array that this contains are assignable from T. More...
 
template<typename T >
const TGet () const
 If this contains an object of type T (which must be one of the defined types), this returns a const reference to it. More...
 
template<typename T >
const TGetValueAt (size_t i) const
 If this contains an array of objects of type T (which must be one of the defined types), this returns a const reference to it if the index is valid. More...
 
template<typename T >
void SetValueAt (size_t i, const T &value)
 Sets the ith element of the array to the passed value. More...
 
 Variant (const Variant &from)
 Copy constructor and assignment operator. More...
 
Variantoperator= (const Variant &from)
 
size_t GetCount () const
 Returns the number of array elements this contains, which is 0 when this holds only a scalar value. More...
 
const AllocatorPtrGetArrayAllocator () const
 Returns the allocator used to make array allocations. More...
 
ArrayAccessor operator[] (size_t i)
 Returns an ArrayAccessor object that facilitates the getting of the actual array element from this. More...
 

Detailed Description

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
class ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >

The Variant class is similar to boost::variant.

It stores one of a limited number of types that are passed as template parameters to the class. Up to 40 types are supported. An instance may be set to a single value or an array of any type derived from one of the types. Note that arrays are not dynamically resizable; changing the size of an array of values is destructive.

Limitations:

  • All types must be distinct.
  • Having multiple types derived from the same type or convertible to the same type may cause compile-time problems.
  • EmptyType<> should not be used explicitly.
  • Array resizing is destructive.

Each template type has:

  • A public typedef exposing the type. For example, T1 is exposed as Type1, T2 as Type2, and so on.
  • An overloaded Set() function that sets the variant to contain a value of the type or a type that is derived from or otherwise convertible to it.

Examples: Variant<int, double> v; v.Set(13); ///< Sets to int with value 13. v.Is<int>(); ///< Returns true. v.Is<double>(); ///< Returns false. v.Get<int>(); ///< Returns 13 (as a const reference). v.Get<double>(); ///< Returns an InvalidReference. v.Set(11.0); ///< Changes to double with value 11.0. v.Is<int>(); ///< Now returns false. v.Is<double>(); ///< Now returns true. v.InitArray<double>(allocator, 2); ///< v now holds an array of 2 doubles. v.Is<int>(); ///< Now returns false. v.Is<double>(); ///< Now returns false. v.IsArrayOf<double>(); ///< Returns true. v[0] = 1.; ///< The decimal point is needed. v.SetValueAt(1, 2.); ///< The decimal point is needed. v.SetValueAt<double>(1, 3); ///< The template parameter is needed. v.GetValueAt<double>(1); ///< Returns 3. v.GetValueAt<int>(1); ///< Returns InvalidReference(). v.GetValueAt<double>(2); ///< Returns InvalidReference(). static_cast<double>(v[0]); ///< Returns 1. The static_cast is necessary.

Definition at line 201 of file variant.h.

Member Typedef Documentation

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T1 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type1

Expose the defined types as typedefs.

Definition at line 204 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T10 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type10

Definition at line 213 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T11 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type11

Definition at line 214 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T12 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type12

Definition at line 215 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T13 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type13

Definition at line 216 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T14 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type14

Definition at line 217 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T15 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type15

Definition at line 218 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T16 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type16

Definition at line 219 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T17 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type17

Definition at line 220 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T18 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type18

Definition at line 221 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T19 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type19

Definition at line 222 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T2 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type2

Definition at line 205 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T20 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type20

Definition at line 223 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T21 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type21

Definition at line 224 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T22 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type22

Definition at line 225 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T23 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type23

Definition at line 226 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T24 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type24

Definition at line 227 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T25 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type25

Definition at line 228 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T26 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type26

Definition at line 229 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T27 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type27

Definition at line 230 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T28 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type28

Definition at line 231 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T29 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type29

Definition at line 232 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T3 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type3

Definition at line 206 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T30 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type30

Definition at line 233 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T31 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type31

Definition at line 234 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T32 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type32

Definition at line 235 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T33 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type33

Definition at line 236 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T34 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type34

Definition at line 237 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T35 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type35

Definition at line 238 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T36 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type36

Definition at line 239 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T37 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type37

Definition at line 240 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T38 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type38

Definition at line 241 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T39 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type39

Definition at line 242 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T4 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type4

Definition at line 207 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T40 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type40

Definition at line 243 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T5 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type5

Definition at line 208 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T6 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type6

Definition at line 209 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T7 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type7

Definition at line 210 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T8 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type8

Definition at line 211 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
typedef T9 ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Type9

Definition at line 212 of file variant.h.

Constructor & Destructor Documentation

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Variant ( )
inline

The default constructor defines a Variant with an invalid tag and leaves the Variant value in an undefined state.

Definition at line 247 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::~Variant ( )
inline

Definition at line 248 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Variant ( const Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 > &  from)
inline

Copy constructor and assignment operator.

Variant instances must be able to be copied.

Definition at line 386 of file variant.h.

Member Function Documentation

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::CopyFrom ( const Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 > &  from)
inline
template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
template<typename T >
bool ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::ElementsAssignableTo ( ) const
inline

Similar to above but only returns true if the elements of the array that this contains are assignable from T.

Definition at line 355 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
template<typename T >
const T& ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Get ( ) const
inline

If this contains an object of type T (which must be one of the defined types), this returns a const reference to it.

Otherwise, it returns an InvalidReference.

Definition at line 364 of file variant.h.

Referenced by ion::gfx::GraphicsManager::GetCapabilityValue().

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
const AllocatorPtr& ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::GetArrayAllocator ( ) const
inline

Returns the allocator used to make array allocations.

Definition at line 397 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
size_t ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::GetCount ( ) const
inline

Returns the number of array elements this contains, which is 0 when this holds only a scalar value.

Definition at line 394 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
template<typename T >
const T& ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::GetValueAt ( size_t  i) const
inline

If this contains an array of objects of type T (which must be one of the defined types), this returns a const reference to it if the index is valid.

Otherwise, it returns an InvalidReference.

Definition at line 372 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
template<typename T >
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::InitArray ( const base::AllocatorPtr allocator,
size_t  count 
)
inline

Sets the type of this variant to be an array of count Ts.

T must be a valid type of this. The passed allocator is used to allocate the memory for the elements; if it is NULL then the current default allocator is used. This destroys any existing elements; variants do not resize like STL containers.

Definition at line 299 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
template<typename T >
bool ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Is ( ) const
inline

Returns true if this contains an object of type T, which must be an exact match with one of the template parameter types.

Definition at line 320 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
template<typename T >
bool ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::IsArrayOf ( ) const
inline

Returns true if this contains an array of type T, which must be an exact match with one of the template parameter types.

Definition at line 328 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
template<typename T >
bool ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::IsAssignableTo ( ) const
inline

Returns true if this contains an object of type T or an object which a T can be assigned to.

For example: Variant<float, Base> v; v.Set(13.2f); v.IsAssignableTo<float>(); ///< Returns true (float is already stored). v.IsAssignableTo<int>(); ///< Returns true (int -> float conversion). v.IsAssignableTo<Base>(); ///< Returns false. Base b; v.Set(b); v.IsAssignableTo<float>(); ///< Returns false. v.IsAssignableTo<Base>(); ///< Returns true. v.IsAssignableTo<Derived>(); ///< Returns true (derived from Base).

Definition at line 348 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
Variant& ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::operator= ( const Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 > &  from)
inline

Definition at line 387 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
ArrayAccessor ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::operator[] ( size_t  i)
inline

Returns an ArrayAccessor object that facilitates the getting of the actual array element from this.

Definition at line 433 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T1 &  value)
inline

Each version of Set() sets the variant to contain a value of one of the defined types or to a type that is derived from or otherwise convertible to one of those types.

Definition at line 253 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T2 &  value)
inline

Definition at line 254 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T3 &  value)
inline

Definition at line 255 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T4 &  value)
inline

Definition at line 256 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T5 &  value)
inline

Definition at line 257 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T6 &  value)
inline

Definition at line 258 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T7 &  value)
inline

Definition at line 259 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T8 &  value)
inline

Definition at line 260 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T9 &  value)
inline

Definition at line 261 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T10 &  value)
inline

Definition at line 262 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T11 &  value)
inline

Definition at line 263 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T12 &  value)
inline

Definition at line 264 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T13 &  value)
inline

Definition at line 265 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T14 &  value)
inline

Definition at line 266 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T15 &  value)
inline

Definition at line 267 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T16 &  value)
inline

Definition at line 268 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T17 &  value)
inline

Definition at line 269 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T18 &  value)
inline

Definition at line 270 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T19 &  value)
inline

Definition at line 271 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T20 &  value)
inline

Definition at line 272 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T21 &  value)
inline

Definition at line 273 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T22 &  value)
inline

Definition at line 274 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T23 &  value)
inline

Definition at line 275 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T24 &  value)
inline

Definition at line 276 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T25 &  value)
inline

Definition at line 277 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T26 &  value)
inline

Definition at line 278 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T27 &  value)
inline

Definition at line 279 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T28 &  value)
inline

Definition at line 280 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T29 &  value)
inline

Definition at line 281 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T30 &  value)
inline

Definition at line 282 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T31 &  value)
inline

Definition at line 283 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T32 &  value)
inline

Definition at line 284 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T33 &  value)
inline

Definition at line 285 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T34 &  value)
inline

Definition at line 286 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T35 &  value)
inline

Definition at line 287 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T36 &  value)
inline

Definition at line 288 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T37 &  value)
inline

Definition at line 289 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T38 &  value)
inline

Definition at line 290 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T39 &  value)
inline

Definition at line 291 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::Set ( const T40 &  value)
inline

Definition at line 292 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
template<typename T >
void ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::SetValueAt ( size_t  i,
const T value 
)
inline

Sets the ith element of the array to the passed value.

If the index is invalid or this variant is not an array of type T, nothing will happen.

Definition at line 379 of file variant.h.

Referenced by ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::ArrayAccessor::operator=().

Member Data Documentation

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T1> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t1

Use ManualConstructor<> so that we can explicitly control the construction/destruction.

Definition at line 1048 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T10> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t10

Definition at line 1057 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T11> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t11

Definition at line 1058 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T12> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t12

Definition at line 1059 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T13> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t13

Definition at line 1060 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T14> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t14

Definition at line 1061 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T15> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t15

Definition at line 1062 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T16> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t16

Definition at line 1063 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T17> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t17

Definition at line 1064 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T18> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t18

Definition at line 1065 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T19> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t19

Definition at line 1066 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T2> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t2

Definition at line 1049 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T20> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t20

Definition at line 1067 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T21> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t21

Definition at line 1068 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T22> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t22

Definition at line 1069 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T23> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t23

Definition at line 1070 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T24> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t24

Definition at line 1071 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T25> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t25

Definition at line 1072 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T26> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t26

Definition at line 1073 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T27> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t27

Definition at line 1074 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T28> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t28

Definition at line 1075 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T29> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t29

Definition at line 1076 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T3> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t3

Definition at line 1050 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T30> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t30

Definition at line 1077 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T31> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t31

Definition at line 1078 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T32> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t32

Definition at line 1079 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T33> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t33

Definition at line 1080 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T34> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t34

Definition at line 1081 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T35> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t35

Definition at line 1082 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T36> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t36

Definition at line 1083 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T37> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t37

Definition at line 1084 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T38> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t38

Definition at line 1085 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T39> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t39

Definition at line 1086 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T4> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t4

Definition at line 1051 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T40> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t40

Definition at line 1087 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T5> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t5

Definition at line 1052 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T6> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t6

Definition at line 1053 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T7> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t7

Definition at line 1054 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T8> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t8

Definition at line 1055 of file variant.h.

template<typename T1, typename T2 = internal_variant_utils::EmptyType<2>, typename T3 = internal_variant_utils::EmptyType<3>, typename T4 = internal_variant_utils::EmptyType<4>, typename T5 = internal_variant_utils::EmptyType<5>, typename T6 = internal_variant_utils::EmptyType<6>, typename T7 = internal_variant_utils::EmptyType<7>, typename T8 = internal_variant_utils::EmptyType<8>, typename T9 = internal_variant_utils::EmptyType<9>, typename T10 = internal_variant_utils::EmptyType<10>, typename T11 = internal_variant_utils::EmptyType<11>, typename T12 = internal_variant_utils::EmptyType<12>, typename T13 = internal_variant_utils::EmptyType<13>, typename T14 = internal_variant_utils::EmptyType<14>, typename T15 = internal_variant_utils::EmptyType<15>, typename T16 = internal_variant_utils::EmptyType<16>, typename T17 = internal_variant_utils::EmptyType<17>, typename T18 = internal_variant_utils::EmptyType<18>, typename T19 = internal_variant_utils::EmptyType<19>, typename T20 = internal_variant_utils::EmptyType<20>, typename T21 = internal_variant_utils::EmptyType<21>, typename T22 = internal_variant_utils::EmptyType<22>, typename T23 = internal_variant_utils::EmptyType<23>, typename T24 = internal_variant_utils::EmptyType<24>, typename T25 = internal_variant_utils::EmptyType<25>, typename T26 = internal_variant_utils::EmptyType<26>, typename T27 = internal_variant_utils::EmptyType<27>, typename T28 = internal_variant_utils::EmptyType<28>, typename T29 = internal_variant_utils::EmptyType<29>, typename T30 = internal_variant_utils::EmptyType<30>, typename T31 = internal_variant_utils::EmptyType<31>, typename T32 = internal_variant_utils::EmptyType<32>, typename T33 = internal_variant_utils::EmptyType<33>, typename T34 = internal_variant_utils::EmptyType<34>, typename T35 = internal_variant_utils::EmptyType<35>, typename T36 = internal_variant_utils::EmptyType<36>, typename T37 = internal_variant_utils::EmptyType<37>, typename T38 = internal_variant_utils::EmptyType<38>, typename T39 = internal_variant_utils::EmptyType<39>, typename T40 = internal_variant_utils::EmptyType<40>>
internal_variant_utils::ManualConstructor<T9> ion::base::Variant< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T40 >::t9

Definition at line 1056 of file variant.h.


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