error 設計
責務
- 検査付き線形代数 API で共有するエラー語彙を提供します。
- 人が読むための
messageと、機械的に判定できるkindを併せて保持します。 - 呼び出し側がメッセージ文字列を解析せずに、代表的な失敗の種類で分岐できるようにします。
- 下位のスカラー演算から伝播した算術エラーを
ArithmeticFailureとして保持します。
非責務
- ここでは行列、ベクトル、バックエンドのアルゴリズムを実装しません。
- 特異行列、非収束、算術エラーからの回復方針は定義しません。
- ログ出力、ローカライズ、表示形式の方針は扱いません。
- 制御フローの意味論を
messageの文面に依存させません。
保守メモ
新しいエラー種別は、検査付きの公開 API が区別して返すべき失敗分類を追加するときだけ導入します。 列挙子、コンストラクタ、判定メソッドをそろえておくことで、呼び出し側はエラー値を直接分解せずに生成と判定を行えます。