diff options
| author | Yuqian Yang <crupest@crupest.life> | 2025-11-21 14:31:45 +0800 |
|---|---|---|
| committer | Yuqian Yang <crupest@crupest.life> | 2025-11-21 14:31:45 +0800 |
| commit | 3cda35dbcbbe1e3854b880169c0efa0fc7a79264 (patch) | |
| tree | 4fa9cc195146b0e28bb9cb186cdbd011166e6024 /include/cru/base/platform/win/Base.h | |
| parent | 2369893a6e07d1837e5df29bdde210decc951557 (diff) | |
| download | cru-3cda35dbcbbe1e3854b880169c0efa0fc7a79264.tar.gz cru-3cda35dbcbbe1e3854b880169c0efa0fc7a79264.tar.bz2 cru-3cda35dbcbbe1e3854b880169c0efa0fc7a79264.zip | |
Use AutoDestruct to impl EventHandlerRevokerGuard.
Diffstat (limited to 'include/cru/base/platform/win/Base.h')
| -rw-r--r-- | include/cru/base/platform/win/Base.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/include/cru/base/platform/win/Base.h b/include/cru/base/platform/win/Base.h index cdd92541..cd5007e3 100644 --- a/include/cru/base/platform/win/Base.h +++ b/include/cru/base/platform/win/Base.h @@ -55,10 +55,12 @@ inline void CheckWinReturn(BOOL r, std::string_view message = "") { } namespace details { -inline void MyCloseHandle(HANDLE handle) noexcept { ::CloseHandle(handle); } +struct HandleCloser { + void operator()(HANDLE handle) noexcept { ::CloseHandle(handle); } +}; } // namespace details -using Win32Handle = AutoDestruct<HANDLE, details::MyCloseHandle>; +using Win32Handle = AutoDestruct<HANDLE, details::HandleCloser>; struct UniDirectionalWin32PipeResult { Win32Handle read; |
