final class CallbackEffects
Restricted visibility: declared "@visibility root". Code outside that scope must not name this declaration.

Runs a callback's object dependencies through the same slicer as its caller.

Methods§

public function __construct(private BackwardSlicer $slicer, private SliceExecutor $executor)

Uses the caller's shared derivation budget and execution semantics.

Parameters

public function apply(
    FunctionLike $callback,
    list<Domain> $arguments,
    Environment $outer,
    FunctionScope $scope,
    ExpressionEvaluator $expressions,
): Domain
public function supported(FunctionLike $callback): bool

Only terminal returns of the same receiver can be interpreted as mutations.

Parameters

$callbackFunctionLike

Returns

bool
Test cases 2
Called from 1
Calls 10
public function bind(
    FunctionLike $callback,
    list<Domain> $arguments,
    Environment $outer,
): Environment

Binds invocation arguments and only the variables a closure captures.

Parameters

$callbackFunctionLike
$argumentslist<Domain>
$outerEnvironment
Test cases 1
Called from 1
Calls 5

Private surface 2§

Implementation details, listed for orientation only.

private BackwardSlicer $slicer
private SliceExecutor $executor

Test cases 16§

Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.

Dedicated tests 6
Other tests reaching this symbol 10

Relations§

Instantiated in 1
Method calls 3
Type declarations 2