1*04fd306cSNickeau<?php 2*04fd306cSNickeau 3*04fd306cSNickeau 4*04fd306cSNickeaunamespace ComboStrap; 5*04fd306cSNickeau 6*04fd306cSNickeau 7*04fd306cSNickeauuse Throwable; 8*04fd306cSNickeau 9*04fd306cSNickeau/** 10*04fd306cSNickeau * Class ExceptionCombo 11*04fd306cSNickeau * @package ComboStrap 12*04fd306cSNickeau * Adds the canonical 13*04fd306cSNickeau */ 14*04fd306cSNickeauclass ExceptionCompile extends \Exception 15*04fd306cSNickeau{ 16*04fd306cSNickeau /** 17*04fd306cSNickeau * @var mixed|string 18*04fd306cSNickeau */ 19*04fd306cSNickeau private $canonical; 20*04fd306cSNickeau 21*04fd306cSNickeau public function __construct($message = "", $canonical = "", $code = 0, Throwable $previous = null) 22*04fd306cSNickeau { 23*04fd306cSNickeau $this->canonical = $canonical; 24*04fd306cSNickeau parent::__construct($message, $code, $previous); 25*04fd306cSNickeau } 26*04fd306cSNickeau 27*04fd306cSNickeau /** 28*04fd306cSNickeau * @return mixed|string 29*04fd306cSNickeau */ 30*04fd306cSNickeau public function getCanonical() 31*04fd306cSNickeau { 32*04fd306cSNickeau return $this->canonical; 33*04fd306cSNickeau } 34*04fd306cSNickeau 35*04fd306cSNickeau public static function withMessageAndError(string $message, Throwable $previous) 36*04fd306cSNickeau { 37*04fd306cSNickeau $calledClass = get_called_class(); 38*04fd306cSNickeau return new $calledClass($message, "support", 1, $previous); 39*04fd306cSNickeau } 40*04fd306cSNickeau 41*04fd306cSNickeau 42*04fd306cSNickeau} 43