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*04fd306cSNickeau * An error that is in the code 15*04fd306cSNickeau */ 16*04fd306cSNickeauclass ExceptionRuntime extends \RuntimeException 17*04fd306cSNickeau{ 18*04fd306cSNickeau /** 19*04fd306cSNickeau * @var mixed|string 20*04fd306cSNickeau */ 21*04fd306cSNickeau private $canonical; 22*04fd306cSNickeau 23*04fd306cSNickeau public function __construct($message = "", $canonical = "", $code = 0, Throwable $previous = null) 24*04fd306cSNickeau { 25*04fd306cSNickeau $this->canonical = $canonical; 26*04fd306cSNickeau parent::__construct($message, $code, $previous); 27*04fd306cSNickeau } 28*04fd306cSNickeau 29*04fd306cSNickeau 30*04fd306cSNickeau public static function withError(Throwable $previous) 31*04fd306cSNickeau { 32*04fd306cSNickeau $calledClass = get_called_class(); 33*04fd306cSNickeau return new $calledClass($previous->getMessage(), "support", 1, $previous); 34*04fd306cSNickeau } 35*04fd306cSNickeau 36*04fd306cSNickeau public static function withMessageAndError(string $message, Throwable $previous) 37*04fd306cSNickeau { 38*04fd306cSNickeau $calledClass = get_called_class(); 39*04fd306cSNickeau return new $calledClass($message, "support", 1, $previous); 40*04fd306cSNickeau } 41*04fd306cSNickeau 42*04fd306cSNickeau /** 43*04fd306cSNickeau * @return mixed|string 44*04fd306cSNickeau */ 45*04fd306cSNickeau public function getCanonical() 46*04fd306cSNickeau { 47*04fd306cSNickeau return $this->canonical; 48*04fd306cSNickeau } 49*04fd306cSNickeau 50*04fd306cSNickeau 51*04fd306cSNickeau} 52