Arene Base
Fundamental Utilities For Safety Critical C++
Loading...
Searching...
No Matches
arene::base::optional_resetter< Value > Class Template Reference

A simple class that resets an optional value in its destructor, unless dismissed. More...

Public Member Functions

 optional_resetter (optional< Value > &opt) noexcept
 Construct an instance and specify the optional object to reset.
 
 optional_resetter (optional_resetter &&)=delete
 Not movable.
 
 optional_resetter (optional_resetter const &)=delete
 Not copyable.
 
 ~optional_resetter ()
 Reset the optional if not dismissed.
 
void dismiss () noexcept
 Dismiss the resetter, so it no longer resets the optional in the destructor.
 
auto operator= (optional_resetter &&) -> optional_resetter &=delete
 Not movable.
 
auto operator= (optional_resetter const &) -> optional_resetter &=delete
 Not copyable.
 

Detailed Description

template<typename Value>
class arene::base::optional_resetter< Value >

A simple class that resets an optional value in its destructor, unless dismissed.

Template Parameters
Valuethe type of the optional's data

Constructor & Destructor Documentation

◆ optional_resetter() [1/3]

template<typename Value>
arene::base::optional_resetter< Value >::optional_resetter ( optional< Value > & opt)
inlineexplicitnoexcept

Construct an instance and specify the optional object to reset.

Parameters
optThe optional to reset

◆ optional_resetter() [2/3]

template<typename Value>
arene::base::optional_resetter< Value >::optional_resetter ( optional_resetter< Value > const & )
delete

Not copyable.

◆ optional_resetter() [3/3]

template<typename Value>
arene::base::optional_resetter< Value >::optional_resetter ( optional_resetter< Value > && )
delete

Not movable.

◆ ~optional_resetter()

template<typename Value>
arene::base::optional_resetter< Value >::~optional_resetter ( )
inline

Reset the optional if not dismissed.

Member Function Documentation

◆ dismiss()

template<typename Value>
void arene::base::optional_resetter< Value >::dismiss ( )
inlinenoexcept

Dismiss the resetter, so it no longer resets the optional in the destructor.

◆ operator=() [1/2]

template<typename Value>
auto arene::base::optional_resetter< Value >::operator= ( optional_resetter< Value > && ) -> optional_resetter &=delete
delete

Not movable.

◆ operator=() [2/2]

template<typename Value>
auto arene::base::optional_resetter< Value >::operator= ( optional_resetter< Value > const & ) -> optional_resetter &=delete
delete

Not copyable.


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