error = $msg; $this->query = $query; } } class InstallerException extends RuntimeException { /** @var string */ public $title; /** @var string */ public $body; /** @var int */ public $code; public function __construct(string $title, string $body, int $code) { parent::__construct($body); $this->title = $title; $this->body = $body; $this->code = $code; } } /** * Class PermissionDeniedException * * A fairly common, generic exception. */ class PermissionDeniedException extends SCoreException { } /** * Class ImageDoesNotExist * * This exception is used when an Image cannot be found by ID. * * Example: Image::by_id(-1) returns null */ class ImageDoesNotExist extends SCoreException { } /* * For validate_input() */ class InvalidInput extends SCoreException { } /* * This is used by the image resizing code when there is not enough memory to perform a resize. */ class InsufficientMemoryException extends SCoreException { } /* * This is used by the image resizing code when there is an error while resizing */ class ImageResizeException extends SCoreException { }