1// Licensed to the .NET Foundation under one or more agreements.
2// The .NET Foundation licenses this file to you under the MIT license.
3// See the LICENSE file in the project root for more information.
4// RuntimeExceptionKind.h
5//
6
7//
8
9
10#ifndef __runtimeexceptionkind_h__
11#define __runtimeexceptionkind_h__
12
13//==========================================================================
14// Identifies commonly-used exception classes for COMPlusThrowable().
15//==========================================================================
16enum RuntimeExceptionKind {
17#define DEFINE_EXCEPTION(ns, reKind, bHRformessage, ...) k##reKind,
18#define DEFINE_EXCEPTION_HR_WINRT_ONLY(ns, reKind, ...)
19#define DEFINE_EXCEPTION_IN_OTHER_FX_ASSEMBLY(ns, reKind, assemblySimpleName, publicKeyToken, bHRformessage, ...) DEFINE_EXCEPTION(ns, reKind, bHRformessage, __VA_ARGS__)
20#include "rexcep.h"
21kLastException
22};
23
24
25// I would have preferred to define a unique HRESULT in our own facility, but we
26// weren't supposed to create new HRESULTs so close to ship. And now it's set
27// in stone.
28#define E_PROCESS_SHUTDOWN_REENTRY HRESULT_FROM_WIN32(ERROR_PROCESS_ABORTED)
29
30
31#endif // __runtimeexceptionkind_h__
32