Electroneum
Loading...
Searching...
No Matches
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:
  • /home/abuild/rpmbuild/BUILD/electroneum-5.1.3.1-build/electroneum-5.1.3.1/src/common/dns_utils.cpp