FE 0.13.1
Header-only C++ frontend library
Loading...
Searching...
No Matches
fe::Restore< T, Get, Set > Class Template Reference

RAII guard that restores a value at the end of the scope. More...

#include <fe/restore.h>

Inheritance diagram for fe::Restore< T, Get, Set >:
[legend]

Public Member Functions

 Restore ()
 Saves what Get yields and restores it in the destructor.
 Restore (T value)
 As above but Sets value up front.
 ~Restore ()
 Restore (const Restore &)=delete
Restoreoperator= (const Restore &)=delete

Detailed Description

template<class T, auto Get = nullptr, auto Set = nullptr>
class fe::Restore< T, Get, Set >

RAII guard that restores a value at the end of the scope.

This primary template guards whatever Get reads and Set writes; see fe::term::ScopedMode.

Definition at line 10 of file restore.h.

Constructor & Destructor Documentation

◆ Restore() [1/3]

template<class T, auto Get = nullptr, auto Set = nullptr>
fe::Restore< T, Get, Set >::Restore ( )
inline

Saves what Get yields and restores it in the destructor.

Definition at line 13 of file restore.h.

◆ Restore() [2/3]

template<class T, auto Get = nullptr, auto Set = nullptr>
fe::Restore< T, Get, Set >::Restore ( T value)
inlineexplicit

As above but Sets value up front.

Definition at line 17 of file restore.h.

◆ ~Restore()

template<class T, auto Get = nullptr, auto Set = nullptr>
fe::Restore< T, Get, Set >::~Restore ( )
inline

Definition at line 22 of file restore.h.

◆ Restore() [3/3]

template<class T, auto Get = nullptr, auto Set = nullptr>
fe::Restore< T, Get, Set >::Restore ( const Restore< T, Get, Set > & )
delete

Member Function Documentation

◆ operator=()

template<class T, auto Get = nullptr, auto Set = nullptr>
Restore & fe::Restore< T, Get, Set >::operator= ( const Restore< T, Get, Set > & )
delete

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