|
RAVENNAKIT
|
A class that holds a rollback function, calling it upon destruction unless a commit is made. More...
#include <defer.hpp>
Public Member Functions | |
| Defer (Fn &&rollback_function) | |
| Constructs a rollback object with an initial rollback function. | |
| ~Defer () | |
| Destructor that executes all registered rollback functions if not committed. | |
| Defer (const Defer &)=delete | |
| Defer & | operator= (const Defer &)=delete |
| Defer (Defer &&)=delete | |
| Defer & | operator= (Defer &&)=delete |
| void | reset () |
| Calls the stored lambda right away, if one exists. | |
| void | release () |
| Release the lambda to not be called during destruction. | |
A class that holds a rollback function, calling it upon destruction unless a commit is made.
This serves as an alternative to the 'goto cleanup' pattern in C, providing a mechanism to roll back changes if subsequent operations fail. The class is exception-safe if given function is exception safe.
|
inlineexplicit |
|
inline |
|
delete |
|
delete |
|
delete |
|
delete |
|
inline |
|
inline |