Electroneum
tools::scoped_ptr< type, freefunc > Class Template Reference

Public Member Functions

 scoped_ptr ()
 
 scoped_ptr (type *p)
 
 ~scoped_ptr ()
 
 operator type * ()
 
type ** operator& ()
 
type * operator-> ()
 
 operator const type * () const
 

Detailed Description

template<typename type, void(*)(type *) freefunc>
class tools::scoped_ptr< type, freefunc >

Definition at line 196 of file dns_utils.cpp.

Constructor & Destructor Documentation

◆ scoped_ptr() [1/2]

template<typename type , void(*)(type *) freefunc>
tools::scoped_ptr< type, freefunc >::scoped_ptr ( )
inline

Definition at line 199 of file dns_utils.cpp.

199  :
200  ptr(nullptr)
201  {
202  }

◆ scoped_ptr() [2/2]

template<typename type , void(*)(type *) freefunc>
tools::scoped_ptr< type, freefunc >::scoped_ptr ( type *  p)
inline

Definition at line 203 of file dns_utils.cpp.

203  :
204  ptr(p)
205  {
206  }

◆ ~scoped_ptr()

template<typename type , void(*)(type *) freefunc>
tools::scoped_ptr< type, freefunc >::~scoped_ptr ( )
inline

Definition at line 207 of file dns_utils.cpp.

208  {
209  freefunc(ptr);
210  }

Member Function Documentation

◆ operator const type *()

template<typename type , void(*)(type *) freefunc>
tools::scoped_ptr< type, freefunc >::operator const type * ( ) const
inline

Definition at line 214 of file dns_utils.cpp.

214 { return &ptr; }

◆ operator type *()

template<typename type , void(*)(type *) freefunc>
tools::scoped_ptr< type, freefunc >::operator type * ( )
inline

Definition at line 211 of file dns_utils.cpp.

211 { return ptr; }

◆ operator&()

template<typename type , void(*)(type *) freefunc>
type** tools::scoped_ptr< type, freefunc >::operator & ( )
inline

Definition at line 212 of file dns_utils.cpp.

212 { return &ptr; }

◆ operator->()

template<typename type , void(*)(type *) freefunc>
type* tools::scoped_ptr< type, freefunc >::operator-> ( )
inline

Definition at line 213 of file dns_utils.cpp.

213 { return ptr; }

The documentation for this class was generated from the following file: