functions.php
This file is part of fast-forward/defer.
This source file is subject to the license bundled with this source code in the file LICENSE.
Tags
Table of Contents
Functions
- defer() : DeferInterface
- Creates a new Defer instance, optionally registering a callback immediately.
- using() : mixed
- Executes a callback within a controlled scope, ensuring resources are released at the end.
- scope() : mixed
- Executes a callback within a deferred scope, ensuring all registered callbacks are executed at the end.
Functions
defer()
Creates a new Defer instance, optionally registering a callback immediately.
defer([callable|null $callback = null ], mixed ...$arguments) : DeferInterface
This function MUST return a DeferInterface implementation. If a callback is provided, it SHALL be registered.
Parameters
- $callback : callable|null = null
-
the callback to register (optional)
- $arguments : mixed
-
Arguments for the callback.
Return values
DeferInterface —the Defer instance
using()
Executes a callback within a controlled scope, ensuring resources are released at the end.
using(callable $factory, callable $callback) : mixed
This function MUST create a Defer instance, pass it to the factory, and execute the callback. The Defer instance SHALL be unset after execution.
Parameters
- $factory : callable
-
a function that receives the Defer and returns the resource
- $callback : callable
-
a function that receives the resource and executes the desired logic
Return values
mixed —the return value of the callback
scope()
Executes a callback within a deferred scope, ensuring all registered callbacks are executed at the end.
scope(callable $callback) : mixed
This function MUST create a Defer instance, pass it to the callback, and unset it after execution.
Parameters
- $callback : callable
-
a function that receives the Defer and executes the desired logic
Return values
mixed —the return value of the callback