Provides smart pointers with different ownership strategies. More...
Classes | |
class | thor::CopiedPtr< T, OwnershipPolicy > |
Generic smart pointer class that supports several deep copy ownership policies. More... | |
struct | thor::StaticCopy< T > |
CopiedPtr policy that performs a deep value copy. More... | |
struct | thor::DynamicCopy< T > |
CopiedPtr policy that performs a deep copy depending on the object's dynamic type. More... | |
struct | thor::VirtualClone< T > |
CopiedPtr policy that calls a virtual Clone() function. More... | |
class | thor::MovedPtr< T > |
Smart pointer with move semantics. More... | |
class | thor::ScopedPtr< T > |
Noncopyable smart pointer that destroys objects going out of scope. More... | |
Functions | |
template<typename T , template< typename > class OwnershipPolicy> | |
void | thor::swap (CopiedPtr< T, OwnershipPolicy > &lhs, CopiedPtr< T, OwnershipPolicy > &rhs) |
Swaps two CopiedPtr<T, OwnershipPolicy> instances. | |
template<typename T > | |
void | thor::swap (MovedPtr< T > &lhs, MovedPtr< T > &rhs) |
Swaps two MovedPtr<T> instances. | |
template<typename T > | |
void | thor::swap (ScopedPtr< T > &lhs, ScopedPtr< T > &rhs) |
Swaps two ScopedPtr<T> instances. |
Provides smart pointers with different ownership strategies.