nur-sery/nur_src/b/ExitError.php

32 lines
687 B
PHP

<?php
namespace nur\b;
use Error;
use Throwable;
/**
* Class ExitException: une exception qui indique que l'application souhaite
* quitter normalement, avec éventuellement un code d'erreur.
*/
class ExitError extends Error {
function __construct(int $exitcode=0, $userMessage=null, Throwable $previous=null) {
parent::__construct(null, $exitcode, $previous);
$this->userMessage = $userMessage;
}
function isError(): bool {
return $this->getCode() !== 0;
}
/** @var ?string */
protected $userMessage;
function haveMessage(): bool {
return $this->userMessage !== null;
}
function getUserMessage(): ?string {
return $this->userMessage;
}
}