CMS 3D CMS Logo

List of all members | Public Member Functions
extstd::clone_ptr< T > Struct Template Reference

#include <clone_ptr.h>

Inheritance diagram for extstd::clone_ptr< T >:

Public Member Functions

template<typename... Args>
 clone_ptr (Args &&...args) noexcept
 
 clone_ptr (clone_ptr const &rh)
 
 clone_ptr (clone_ptr &&rh) noexcept
 
template<typename U >
 clone_ptr (clone_ptr< U > const &rh)
 
template<typename U >
 clone_ptr (clone_ptr< U > &&rh) noexcept
 
clone_ptroperator= (clone_ptr const &rh)
 
clone_ptroperator= (clone_ptr &&rh) noexcept
 
template<typename U >
clone_ptroperator= (clone_ptr< U > const &rh)
 
template<typename U >
clone_ptroperator= (clone_ptr< U > &&rh) noexcept
 

Detailed Description

template<typename T>
struct extstd::clone_ptr< T >

Definition at line 11 of file clone_ptr.h.

Constructor & Destructor Documentation

template<typename T>
template<typename... Args>
extstd::clone_ptr< T >::clone_ptr ( Args &&...  args)
inlineexplicitnoexcept

Definition at line 14 of file clone_ptr.h.

14 : std::unique_ptr<T>(std::forward<Args>(args)...){}
template<typename T>
extstd::clone_ptr< T >::clone_ptr ( clone_ptr< T > const &  rh)
inline

Definition at line 16 of file clone_ptr.h.

16 : std::unique_ptr<T>(rh? rh->clone() : nullptr){}
template<typename T>
extstd::clone_ptr< T >::clone_ptr ( clone_ptr< T > &&  rh)
inlinenoexcept

Definition at line 17 of file clone_ptr.h.

17 : std::unique_ptr<T>(std::move(rh)) {}
def move(src, dest)
Definition: eostools.py:511
template<typename T>
template<typename U >
extstd::clone_ptr< T >::clone_ptr ( clone_ptr< U > const &  rh)
inline

Definition at line 30 of file clone_ptr.h.

30 : std::unique_ptr<T>(rh ? rh->clone() : nullptr){}
template<typename T>
template<typename U >
extstd::clone_ptr< T >::clone_ptr ( clone_ptr< U > &&  rh)
inlinenoexcept

Definition at line 32 of file clone_ptr.h.

32 : std::unique_ptr<T>(std::move(rh)) {}
def move(src, dest)
Definition: eostools.py:511

Member Function Documentation

template<typename T>
clone_ptr& extstd::clone_ptr< T >::operator= ( clone_ptr< T > const &  rh)
inline

Definition at line 19 of file clone_ptr.h.

19  {
20  if (&rh!=this) this->reset(rh? rh->clone() : nullptr);
21  return *this;
22  }
void reset(double vett[256])
Definition: TPedValues.cc:11
template<typename T>
clone_ptr& extstd::clone_ptr< T >::operator= ( clone_ptr< T > &&  rh)
inlinenoexcept

Definition at line 23 of file clone_ptr.h.

23  {
24  if (&rh!=this) std::unique_ptr<T>::operator=(std::move(rh));
25  return *this;
26  }
def move(src, dest)
Definition: eostools.py:511
template<typename T>
template<typename U >
clone_ptr& extstd::clone_ptr< T >::operator= ( clone_ptr< U > const &  rh)
inline

Definition at line 35 of file clone_ptr.h.

35  {
36  if (&rh!=this) this->reset(rh? rh->clone() : nullptr);
37  return *this;
38  }
void reset(double vett[256])
Definition: TPedValues.cc:11
template<typename T>
template<typename U >
clone_ptr& extstd::clone_ptr< T >::operator= ( clone_ptr< U > &&  rh)
inlinenoexcept

Definition at line 40 of file clone_ptr.h.

40  {
41  if (&rh!=this) std::unique_ptr<T>::operator=(std::move(rh));
42  return *this;
43  }
def move(src, dest)
Definition: eostools.py:511