#include <utl/ShadowPtr_fwd.h>
#include <utility>
Go to the source code of this file.
Classes | |
struct | utl::Meta< T >::BoolSwitch< v, int > |
struct | utl::ShadowPtrMeta::BoolSwitch< v, T > |
struct | utl::Meta< T >::BoolSwitch< true, i > |
struct | utl::ShadowPtrMeta::BoolSwitch< true, T > |
class | utl::Meta< T >::False |
struct | utl::ShadowPtrMeta::False |
struct | utl::Meta< T >::HasClone< U > |
struct | utl::ShadowPtrMeta::HasClone< T > |
class | utl::InitializedShadowPtr< T, DereferenceCheck > |
class | utl::Meta< T > |
class | utl::ShadowPtr< T, DereferenceCheck > |
pointer with built-in initialization, deletion, deep copying More... | |
class | utl::Meta< T >::True |
struct | utl::ShadowPtrMeta::True |
Namespaces | |
utl | |
utl::ShadowPtrMeta | |
Functions | |
template<typename T > | |
T * | utl::ShadowPtrMeta::Clone (const T &src) |
Clone a given object. More... | |
template<typename T > | |
T * | utl::ShadowPtrMeta::CloneOne (const T &src) |
template<typename T , class D > | |
bool | utl::DeepEqual (const ShadowPtr< T, D > &s1, const ShadowPtr< T, D > &s2) |
template<typename T > | |
True | utl::ShadowPtrMeta::MatchCloneTag (typename T::IsClonableTag *const) |
template<typename T > | |
False | utl::ShadowPtrMeta::MatchCloneTag (...) |
template<typename T , class D > | |
void | utl::swap (ShadowPtr< T, D > &a, ShadowPtr< T, D > &b) |
this helps ShadowPtr in STL containers More... | |