Deluge Firmware 1.3.0
Build date: 2025.04.16
Loading...
Searching...
No Matches
finally.h
1#pragma once
2
3namespace util {
4template <typename F>
5struct Finalizer {
6 Finalizer(F f) : clean_{f} {}
7
8 ~Finalizer() {
9 if (enabled_) {
10 clean_();
11 }
12 }
13
14 void disable() { enabled_ = false; };
15
16private:
17 F clean_;
18 bool enabled_{true};
19};
20
21template <typename F>
22Finalizer<F> finally(F f) {
23 return Finalizer<F>(f);
24}
25} // namespace util
Definition finally.h:5