Disk ARchive 2.7.16
Full featured and portable backup and archiving tool
Public Member Functions | Private Attributes | List of all members
libdar::smart_node< T > Class Template Reference

class which holds the address of the allocated memory for many smart_pointers More...

#include <smart_pointer.hpp>

+ Inheritance diagram for libdar::smart_node< T >:
+ Collaboration diagram for libdar::smart_node< T >:

Public Member Functions

 smart_node (T *arg)
 
 smart_node (const smart_node &ref)=delete
 
 smart_node (smart_node &&ref) noexcept=delete
 
smart_nodeoperator= (const smart_node &ref)=delete
 
smart_nodeoperator= (smart_node &&ref)=delete
 
void add_ref ()
 
void del_ref ()
 
T & get_val ()
 

Private Attributes

T * ptr
 
infinint count_ref
 

Detailed Description

template<class T>
class libdar::smart_node< T >

class which holds the address of the allocated memory for many smart_pointers

Note
it should not be used directly, rather see below the smart_pointer class template

Definition at line 46 of file smart_pointer.hpp.

Constructor & Destructor Documentation

◆ smart_node()

template<class T >
libdar::smart_node< T >::smart_node ( T *  arg)
inline
Note
the given pointed to object passes under the responsibility of the smart_node

Definition at line 50 of file smart_pointer.hpp.

◆ ~smart_node()

template<class T >
libdar::smart_node< T >::~smart_node ( )
inlinenoexcept

Definition at line 55 of file smart_pointer.hpp.

Member Function Documentation

◆ add_ref()

template<class T >
void libdar::smart_node< T >::add_ref ( )
inline

Definition at line 57 of file smart_pointer.hpp.

◆ del_ref()

template<class T >
void libdar::smart_node< T >::del_ref ( )
inline

Definition at line 58 of file smart_pointer.hpp.

◆ get_val()

template<class T >
T & libdar::smart_node< T >::get_val ( )
inline

Definition at line 59 of file smart_pointer.hpp.

Member Data Documentation

◆ count_ref

template<class T >
infinint libdar::smart_node< T >::count_ref
private

Definition at line 63 of file smart_pointer.hpp.

◆ ptr

template<class T >
T* libdar::smart_node< T >::ptr
private

Definition at line 62 of file smart_pointer.hpp.


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