Stroika Library 3.0d18
 
Loading...
Searching...
No Matches
StructuredException.h
1/*
2 * Copyright(c) Sophist Solutions, Inc. 1990-2025. All rights reserved
3 */
4#ifndef _Stroika_Foundation_Execution_Platform_Windows_StructuredException_h_
5#define _Stroika_Foundation_Execution_Platform_Windows_StructuredException_h_ 1
6
7#include "Stroika/Foundation/StroikaPreComp.h"
8
9#include <system_error>
10
11#if qStroika_Foundation_Common_Platform_Windows
12#include <Windows.h>
13#else
14#error "WINDOWS REQUIRED FOR THIS MODULE"
15#endif
16
18
19 /**
20 * Return a reference the the HRESULT error category object (windows only). This object lives forever (like other error categories).
21 */
22 const std::error_category& StructuredException_error_category () noexcept;
23
24 /**
25 * Windows generally defaults to having 'structured exceptions' cause the application to crash.
26 * This allows translating those exceptions into C++ exceptions.
27 *
28 * @see https://msdn.microsoft.com/en-us/library/5z4bw5h5.aspx
29 */
31
32}
33
34/*
35 ********************************************************************************
36 ***************************** Implementation Details ***************************
37 ********************************************************************************
38 */
39#include "StructuredException.inl"
40
41#endif /*_Stroika_Foundation_Execution_Platform_Windows_StructuredException_h_*/
const std::error_category & StructuredException_error_category() noexcept