MoveDataPtr contains type info and a pointer to an arbitrary generic object. The type of the object is only known at run-time. MoveDataPtr is typically used as parameter type of a generic function which accepts any type of object and moves the object to some other location. 
 | 
|   | MoveDataPtr ()=default | 
|   | 
|   | MoveDataPtr (const DataType &typeInfo, Generic *dataPtr) | 
|   | 
|   | MoveDataPtr (Data &&value) | 
|   | 
| template<typename T >  | 
|   | MoveDataPtr (T &&value) | 
|   | 
| template<typename T >  | 
| Result< typename std::conditional< std::is_void< T >::value, void, typename std::conditional< std::is_same< T, Data >::value, Data, T && >::type >::type >  | Get () | 
|   | 
| template<>  | 
| Result< Data >  | Get () | 
|   | 
| template<typename T >  | 
| Result< typename std::conditional< std::is_same< T, Data >::value||(GetCollectionKind< T >::value==COLLECTION_KIND::ARRAY), T, typename ByValueParam< T >::type >::type >  | Get () const | 
|   | 
| template<typename T >  | 
| ByValueParam< T >::type  | Get (const T &defaultValue) const | 
|   | 
| template<>  | 
| Result< void >  | Get () const | 
|   | 
| template<>  | 
| Result< Data >  | Get () const | 
|   | 
|   | DataPtr ()=default | 
|   | 
|   | DataPtr (Data &value) | 
|   | 
|   | DataPtr (const DataType &typeInfo, Generic *dataPtr) | 
|   | 
| template<typename T >  | 
|   | DataPtr (T &value) | 
|   | 
| Generic *  | PrivateGetPtr () const | 
|   | 
| Generic *  | GetPtr (const DataType &type) | 
|   | 
| template<typename T >  | 
| T *  | GetPtr () | 
|   | 
| Result< void >  | MoveFrom (Data &&src) | 
|   | 
| Result< void >  | CopyFrom (const Data &src) | 
|   | 
| const Generic *  | GetPtr (const DataType &type) const | 
|   | 
| template<typename T >  | 
| const T *  | GetPtr () const | 
|   | 
|   | ConstDataPtr ()=default | 
|   | 
|   | ConstDataPtr (const Data &value) | 
|   | 
|   | ConstDataPtr (const DataType &typeInfo, const Generic *dataPtr) | 
|   | 
| template<typename T >  | 
|   | ConstDataPtr (const T &value) | 
|   | 
| Bool  | IsEmpty () const | 
|   | 
| Bool  | IsPopulated () const | 
|   | 
| const DataType &  | GetType () const | 
|   | 
| const Generic *  | PrivateGetPtr () const | 
|   | 
| void  | Set (const DataType &typeInfo, const Generic *dataPtr) | 
|   | 
| template<typename T >  | 
| void  | Set (const T &value) | 
|   | 
| void  | Set (const Data &value) | 
|   | 
| void  | Set (Data &value) | 
|   | 
| void  | Set (Data &&value) | 
|   | 
| const Generic *  | GetPtr (const DataType &type) const | 
|   | 
| template<typename T >  | 
| const T *  | GetPtr () const | 
|   | 
| template<typename T >  | 
| Result< typename std::conditional< std::is_same< T, Data >::value||(GetCollectionKind< T >::value==COLLECTION_KIND::ARRAY), T, typename ByValueParam< T >::type >::type >  | Get () const | 
|   | 
| template<typename T >  | 
| ByValueParam< T >::type  | GetOrNull () const | 
|   | 
| template<typename T >  | 
| ByValueParam< T >::type  | Get (const T &defaultValue) const | 
|   | 
| COMPARERESULT  | Compare (const ConstDataPtr &c) const | 
|   | 
| COMPARERESULT  | Compare (const Data &c) const | 
|   | 
| UInt  | GetHashCode () const | 
|   | 
| Bool  | operator== (const ConstDataPtr &c) const | 
|   | 
| Bool  | operator!= (const ConstDataPtr &c) const | 
|   | 
| Bool  | operator< (const ConstDataPtr &c) const | 
|   | 
| Bool  | operator<= (const ConstDataPtr &c) const | 
|   | 
| Bool  | operator> (const ConstDataPtr &c) const | 
|   | 
| Bool  | operator>= (const ConstDataPtr &c) const | 
|   | 
| String  | ToString (const FormatStatement *formatStatement) const | 
|   | 
| template<>  | 
| Result< void >  | Get () const | 
|   | 
| template<>  | 
| Result< Data >  | Get () const | 
|   |