Merge remote-tracking branch 'origin/topic/timw/move-util-deferred'

* origin/topic/timw/move-util-deferred:
  Move util::Deferred into util-types.h
This commit is contained in:
Tim Wojtulewicz 2025-07-13 19:22:52 -07:00
commit 448590270b
4 changed files with 17 additions and 13 deletions

View file

@ -1,3 +1,7 @@
8.0.0-dev.646 | 2025-07-13 19:22:52 -0700
* Move util::Deferred into util-types.h (Tim Wojtulewicz, Corelight)
8.0.0-dev.643 | 2025-07-11 15:35:33 -0400 8.0.0-dev.643 | 2025-07-11 15:35:33 -0400
* Cleanup unused baselines (Evan Typanski, Corelight) * Cleanup unused baselines (Evan Typanski, Corelight)

View file

@ -1 +1 @@
8.0.0-dev.643 8.0.0-dev.646

View file

@ -62,5 +62,17 @@ private:
void DoFunc(const std::string& path, bool error_aborts = true); void DoFunc(const std::string& path, bool error_aborts = true);
}; };
/**
* 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 util
} // namespace zeek } // namespace zeek

View file

@ -622,17 +622,5 @@ 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)); 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 util
} // namespace zeek } // namespace zeek