1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59:
<?php
// このファイルの名前空間の定義
namespace SKJ\AppException;
// 別名定義
use SKJ\AppException;
/**
* アプリケーションレベルでのロジック例外
*
* アプリケーションレベルで発生したロジック例外です
*
* ◆詳細◆
* <ul>
* <li>正常利用では絶対に発生しないエラー(処理の途中で絶対に入りえない分岐に入った場合や、予め想定されている使い方をされなかった場合)に適用する例外</li>
* <li>明確なバグの発生であり、発生した時点で必ずコードの修正が発生する</li>
* <li>呼び出し元は予め例外の発生を予測することができる</li>
* <li>多くはプログラムのバグ検出のために仕込む例外</li>
* <li>例) 必ずコード中で定義されているはずの配列のエントリが存在しない</li>
* <li>JavaのRuntimeExceptionに該当する</li>
* </ul>
*
* @package SKJ\AppException
* @version 0.8.0
* @author y3high <y3public@49364.net>
* @copyright 2019 Seikouhou.
* @license https://opensource.org/licenses/MIT MIT
* @since Class available since Release 0.8.0
*/
class LogicException extends AppException
{
/**
* @api
* @var string コンストラクタの引数<var>$message</var>が渡されなかった場合の既定の例外メッセージ
*/
protected $defMessage = 'ロジック例外が発生しました';
/**
* @api
* @var string コンストラクタの引数<var>$message</var>が配列で渡された場合にvsprintfに渡すフォーマット文字列
*/
protected $messageTemplate = '%sでロジック例外が発生しました';
/**
* @api
* @var int コンストラクタの引数<var>$code</var>が渡されなかった場合の既定の例外コード
*/
protected $defCode = 1200;
/**
* @api
* @var mixed 補助的に使用される状態コード(デフォルトはself::<var>$defCode</var>と同じ)
*/
protected $statusCode = 1200;
/**
* @api
* @var int このオブジェクトをイテレータとして扱った時に返す連結された例外のソート順
* @uses self::SORT_ORDER_DESC 初期値として使用
*/
protected $iteratorSortOrder = self::SORT_ORDER_DESC;
}