Data Structures |
| class | reader_type |
| | Base reader type functor class. More...
|
| class | reader_type< R1, no_type2, no_type3, no_type4, no_type5, no_type6, no_type7, no_type8 > |
| | Define the reader type for 1 type. More...
|
| class | reader_type< R1, R2, no_type3, no_type4, no_type5, no_type6, no_type7, no_type8 > |
| | Define the reader type for 2 types. More...
|
| class | reader_type< R1, R2, R3, no_type4, no_type5, no_type6, no_type7, no_type8 > |
| | Define the reader type for 3 types. More...
|
| class | reader_type< R1, R2, R3, R4, no_type5, no_type6, no_type7, no_type8 > |
| | Define the reader type for 4 types. More...
|
| class | reader_type< R1, R2, R3, R4, R5, no_type6, no_type7, no_type8 > |
| | Define the reader type for 5 types. More...
|
| class | reader_type< R1, R2, R3, R4, R5, R6, no_type7, no_type8 > |
| | Define the reader type for 6 types. More...
|
| class | reader_type< R1, R2, R3, R4, R5, R6, R7, no_type8 > |
| | Define the reader type for 7 types. More...
|
| class | upcast_functor |
| | Base upcast_functor for eight types. More...
|
| class | upcast_functor< TBase, U1, no_type2, no_type3, no_type4, no_type5, no_type6, no_type7, no_type8 > |
| | Upcast_functor for one type. More...
|
| class | upcast_functor< TBase, U1, U2, no_type3, no_type4, no_type5, no_type6, no_type7, no_type8 > |
| | Upcast_functor for two types. More...
|
| class | upcast_functor< TBase, U1, U2, U3, no_type4, no_type5, no_type6, no_type7, no_type8 > |
| | Upcast_functor for three types. More...
|
| class | upcast_functor< TBase, U1, U2, U3, U4, no_type5, no_type6, no_type7, no_type8 > |
| | Upcast_functor for four types. More...
|
| class | upcast_functor< TBase, U1, U2, U3, U4, U5, no_type6, no_type7, no_type8 > |
| | Upcast_functor for five types. More...
|
| class | upcast_functor< TBase, U1, U2, U3, U4, U5, U6, no_type7, no_type8 > |
| | Upcast_functor for six types. More...
|
| class | upcast_functor< TBase, U1, U2, U3, U4, U5, U6, U7, no_type8 > |
| | Upcast_functor for seven types. More...
|
Public Types |
typedef reader_type< T1, T2,
T3, T4, T5, T6, T7, T8 > | reader |
| | The base type for derived readers.
|
Public Member Functions |
| | ~variant () |
| | Destructor.
|
| | variant () |
| | Default constructor.
|
| template<typename T > |
| | variant (const T &value) |
| | Constructor that catches any types that are not supported.
|
| | variant (const variant &other) |
| | Copy constructor.
|
| template<typename T > |
| variant & | operator= (const T &value) |
| | Assignment operator for T1 type.
|
| variant & | operator= (const variant &other) |
| | Assignment operator for variant type.
|
| bool | is_same_type (const variant &other) const |
| | Checks if the type is the same as the current stored type.
|
| template<typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 > |
| bool | is_same_type (const variant< U1, U2, U3, U4, U5, U6, U7, U8 > &other) const |
| | Checks if the type is the same as the current stored type.
|
| void | call (reader &reader) |
| | Calls the supplied reader instance.
|
| bool | is_valid () const |
| | Checks whether a valid value is currently stored.
|
| template<typename T > |
| bool | is_type () const |
| | Checks to see if the type currently stored is the same as that specified in the template parameter.
|
| void | clear () |
| | Clears the value to 'no valid stored value'.
|
| template<typename T > |
| T & | get () |
| | Gets the value stored as the specified template type.
|
| template<typename T > |
| const T & | get () const |
| | Gets the value stored as the specified template type.
|
| template<typename TBase > |
| TBase & | upcast () |
| | Gets the value stored as the specified template type.
|
| template<typename TBase > |
| const TBase & | upcast () const |
| | Gets the value stored as the specified template type.
|
| | operator T1 & () |
| | Conversion operators for each type.
|
Static Public Member Functions |
| template<typename T > |
| static bool | is_supported_type () |
| | Checks if the template type is supported by the implementation of variant.
|