Template Struct Cloner< DefaultCloner >

Struct Documentation

template<>
struct Cloner<DefaultCloner>

Public Types

template<typename T>
using trivial_clone = meta::bool_constant<VEG_CONCEPT(trivially_copyable<T>)>

Public Functions

inline  VEG_TEMPLATE ((typename T, typename Alloc), requires(VEG_CONCEPT(copyable< T >)), VEG_NODISCARD VEG_INLINE static auto clone,(, RefMut< DefaultCloner >),(rhs, Ref< T >),(, RefMut< Alloc >)) VEG_NOEXCEPT_IF(VEG_CONCEPT(nothrow_copyable< T >)) -> T
inline  VEG_TEMPLATE ((typename T, typename Alloc), requires(VEG_CONCEPT(copyable< T >)), VEG_INLINE static void clone_from,(, RefMut< DefaultCloner >),(lhs, RefMut< T >),(rhs, Ref< T >),(, RefMut< Alloc >))

Public Static Functions

template<typename T, typename Alloc> static inline VEG_INLINE void destroy (RefMut< DefaultCloner >, T *ptr, RefMut< Alloc >)