Move Deferred class from ZeroMQ to util

This commit is contained in:
Tim Wojtulewicz 2025-06-02 13:46:49 -07:00
parent c68dfdca2f
commit 850b20e12b
2 changed files with 13 additions and 11 deletions

View file

@ -662,5 +662,17 @@ inline std::vector<std::wstring_view> split(const wchar_t* s, const wchar_t* del
return split(std::wstring_view(s), std::wstring_view(delim));
}
/**
* Helper class that runs a function at destruction.
*/
class Deferred {
public:
Deferred(std::function<void()> deferred) : deferred(std::move(deferred)) {}
~Deferred() { deferred(); }
private:
std::function<void()> deferred;
};
} // namespace util
} // namespace zeek