mn_clone_ptr.hpp File Reference
#include "../mn_config.hpp"
#include "../mn_algorithm.hpp"
#include "../mn_deleter.hpp"
#include <stdlib.h>

Go to the source code of this file.

Classes

struct  mn::pointer::basic_default_clone< T >
 
class  mn::pointer::basic_clone_ptr< T, TCloner, TDeleter >
 

Namespaces

 mn
 
 mn::pointer
 

Typedefs

template<typename T , class TCloner = basic_default_clone<T>, class TDeleter = memory::default_delete<T>>
using mn::pointer::clone_ptr = basic_clone_ptr< T, TCloner, TDeleter >
 
template<typename T >
using mn::pointer::default_clone = basic_default_clone< T >
 

Functions

template<typename T , class TCloner = basic_default_clone<T>, class TDeleter = memory::default_delete<T>>
void mn::pointer::swap (basic_clone_ptr< T, TCloner, TDeleter > &a, basic_clone_ptr< T, TCloner, TDeleter > &b)
 
template<typename T , typename... Args>
clone_ptr< T > mn::pointer::make_clone (Args &&... args)
 Make a clone pointer. More...