17 #ifndef HH_SENF_Utils_pimpl_ptr_ 18 #define HH_SENF_Utils_pimpl_ptr_ 1 22 #include <boost/ptr_container/clone_allocator.hpp> 30 template<
typename T,
class CloneAllocator=boost::heap_clone_allocator>
33 typedef void (*Deleter)(T* p);
34 typedef T* (*Copier)(
const T* p);
41 const T*
get()
const throw();
55 static Copier doCopy_;
56 static Deleter doDelete_;
59 static void myDeleteFn(T* p);
60 static T* myCopyFn(
const T* p);
67 template<
class T,
class CloneAllocator>
pimpl_ptr & operator=(const pimpl_ptr &rhs)
const T * operator->() const
void swap(pimpl_ptr &with)
const T & operator*() const