<?php
/**
 * Thrown when a backup tick has used its time budget and should yield.
 *
 * This is NOT an error — it's a cooperative "pause here, resume next tick"
 * signal. The engine catches it, leaves the backup in 'running' state with
 * its progress saved, and a self-rescheduling cron event (or the browser's
 * AJAX driver) calls execute() again to continue.
 *
 * This is what lets a multi-hour backup complete on shared hosting that kills
 * PHP requests after 30 seconds: no single request runs long enough to die.
 *
 * @package Backreload\Core
 */

namespace Backreload\Core;

if ( ! defined( 'ABSPATH' ) ) { exit; }

class TimeBudgetExceeded extends \RuntimeException {}
