<?php
/**
 * ModuleBootException class.
 *
 * Exception thrown when a module fails to boot.
 *
 * @package Ilabs\Firevert\Core\Exceptions
 */

// phpcs:disable

declare( strict_types=1 );

namespace Ilabs\Firevert\Core\Exceptions;

use RuntimeException;
use Throwable;

/**
 * Exception thrown when a module fails to boot.
 */
class ModuleBootException extends RuntimeException {

	/**
	 * Constructor.
	 *
	 * @param string      $message Exception message.
	 * @param int            $code Exception code.
	 * @param Throwable|null $previous Previous exception.
	 */
	public function __construct(
		string $message = 'Module failed to boot.',
		int $code = 500,
		Throwable $previous = null
	) {
		parent::__construct( $message, $code, $previous );
	}
}
