66 template<
typename SmartPo
inter,
typename T>
95 template<
class T,
typename SmartPo
inter = Shared<T>>
107 template<
class Target,
typename... Args>
155#include <StormByte/safe/clonable.txx>
Polymorphic copy and move through a base.
Definition clonable.hxx:96
SmartPointer PointerType
SmartPointer alias.
Definition clonable.hxx:98
constexpr Clonable()=default
Default constructor.
static PointerType MakePointer(Args &&... args)
Allocates Target on Base's heap and returns it as PointerType.
constexpr Clonable(const Clonable &)=default
Copy constructor.
constexpr Clonable(Clonable &&) noexcept=default
Move constructor.
true when SmartPointer is StormByte::Safe::Shared<T> or StormByte::Safe::Unique<T>.
Definition clonable.hxx:67
Same type after stripping cv and references from both sides.
Definition relations.hxx:94
Root namespace of the StormByte suite.
DLL-safe shared and unique owners.
#define STORMBYTE_PUBLIC_TYPE
Definition visibility.h:57