AM Daemon ライブラリリファレンス
ExceptionCategory.h
[詳解]
1 /// @file
2 /// @brief AM Daemon の例外カテゴリ列挙 ExceptionCategory のヘッダ。
3 ///
4 /// Copyright(C)SEGA
5 
6 #ifndef AMDAEMON_EXCEPTIONCATEGORY_H
7 #define AMDAEMON_EXCEPTIONCATEGORY_H
8 
9 #include "amdaemon/env.h"
10 
11 namespace amdaemon
12 {
13 /// @addtogroup g_exception
14 /// @{
15 
16  /// AM Daemon の例外カテゴリ列挙。
17  enum class ExceptionCategory
18  {
19  /// @brief 引数間違いなど単純なバグ。
20  ///
21  /// 例外スローを抑止した場合は例外生成元の関数が失敗値(false など)を返す。
22  Logic = 0,
23 
24  /// @brief 呼び出し順序間違いなどAPI使用方法のミス。
25  ///
26  /// 例外スローを抑止した場合は例外生成元の関数が失敗値(false など)を返す。
27  Operation,
28 
29  /// @brief 実行時の状況によるエラー。
30  ///
31  /// 例外スローを抑止した場合は例外生成元の関数が失敗値(false など)を返す。
32  Runtime,
33 
34  /// @brief 共有メモリ確保失敗など回復不能なエラー。
35  ///
36  /// 例外スローを抑止した場合はまず __debugbreak 関数を呼び出し、
37  /// そこを通過した場合は std::unexpected 関数を呼び出す。
38  /// std::unexpected 関数は既定ではアプリを強制終了させる。
39  Fatal,
40 
41  /// @brief 不明。ライブラリ側で明示的にこのカテゴリを用いることはない。
42  ///
43  /// 例外スローを抑止した場合はまず __debugbreak 関数を呼び出し、
44  /// そこを通過した場合は std::unexpected 関数を呼び出す。
45  /// std::unexpected 関数は既定ではアプリを強制終了させる。
46  Unknown,
47  };
48 
49  /// @brief @ref ExceptionCategory 列挙値の文字列表現値を取得する。
50  /// @param[in] category @ref ExceptionCategory 列挙値。
51  /// @return @ref ExceptionCategory 列挙値の文字列表現値。不正値の場合は nullptr 。
52  /// @internal ライブラリ実装メモ: enumsToString.cpp で実装。
53  const wchar_t* toString(ExceptionCategory category);
54 
55 /// @}
56 } // namespace amdaemon
57 
58 #endif // AMDAEMON_EXCEPTIONCATEGORY_H
Error クラスのメンバ関数 Error::reset 呼び出しでのみリセット可能。
Daemonライブラリの環境定義を行うヘッダ。
ExceptionCategory
AM Daemon の例外カテゴリ列挙。
Definition: ExceptionCategory.h:17
AM Daemon ライブラリクラス群の基底名前空間。
Definition: Log.h:13
const wchar_t * toString(AimeCommand command)
AimeCommand 列挙値の文字列表現値を取得する。
実行時の状況によるエラー。
不明なエラー。
引数間違いなど単純なバグ。