Go to the documentation of this file. 1 #ifndef CMSSW_mayown_ptr_H
2 #define CMSSW_mayown_ptr_H
12 template <
typename T,
int N = sizeof(T*)>
20 unsigned char buff[
N];
29 unsigned char buff[
N];
31 return 1 == (buff[
N - 1] & 1);
36 unsigned char buff[
N];
47 delete const_cast<T*>(
pointer());
85 bool empty()
const {
return nullptr ==
p; }
87 T const*
raw()
const {
return p; }
92 return rh.
raw() ==
lh.raw();
96 return rh.
raw() <
lh.raw();
T const * pointer() const
bool operator<(mayown_ptr< T > const &rh, mayown_ptr< T > const &lh)
mayown_ptr(T *ip=nullptr)
mayown_ptr & operator=(mayown_ptr &&rh)
mayown_ptr(mayown_ptr &&rh)
bool operator==(mayown_ptr< T > const &rh, mayown_ptr< T > const &lh)
T const & operator*() const
mayown_ptr & operator=(mayown_ptr &)=delete
T const * operator->() const