Scroom  0.14
Scroom::Utils::optional_cleanup< F > Class Template Reference

#include <utilities.hh>

Collaboration diagram for Scroom::Utils::optional_cleanup< F >:
Collaboration graph

Public Member Functions

 optional_cleanup (F f_)
 
 optional_cleanup (const optional_cleanup &)=delete
 
 optional_cleanup (optional_cleanup &&)=delete
 
optional_cleanupoperator= (const optional_cleanup &)=delete
 
optional_cleanupoperator= (optional_cleanup &&)=delete
 
 ~optional_cleanup ()
 
void cancel ()
 

Private Attributes

bool cleanup {true}
 
f
 

Constructor & Destructor Documentation

◆ optional_cleanup() [1/3]

template<typename F >
Scroom::Utils::optional_cleanup< F >::optional_cleanup ( f_)
inlineexplicit
85  : f(std::move(f_))
86  {
87  }

◆ optional_cleanup() [2/3]

template<typename F >
Scroom::Utils::optional_cleanup< F >::optional_cleanup ( const optional_cleanup< F > &  )
delete

◆ optional_cleanup() [3/3]

template<typename F >
Scroom::Utils::optional_cleanup< F >::optional_cleanup ( optional_cleanup< F > &&  )
delete

◆ ~optional_cleanup()

template<typename F >
Scroom::Utils::optional_cleanup< F >::~optional_cleanup ( )
inline
94  {
95  if(cleanup)
96  {
97  f();
98  }
99  }

Member Function Documentation

◆ cancel()

template<typename F >
void Scroom::Utils::optional_cleanup< F >::cancel ( )
inline
101 { cleanup = false; }

◆ operator=() [1/2]

template<typename F >
optional_cleanup& Scroom::Utils::optional_cleanup< F >::operator= ( const optional_cleanup< F > &  )
delete

◆ operator=() [2/2]

template<typename F >
optional_cleanup& Scroom::Utils::optional_cleanup< F >::operator= ( optional_cleanup< F > &&  )
delete

Member Data Documentation

◆ cleanup

◆ f


The documentation for this class was generated from the following file:
Scroom::Utils::optional_cleanup::f
F f
Definition: utilities.hh:105
Scroom::Utils::optional_cleanup::cleanup
bool cleanup
Definition: utilities.hh:104