Issues (85)

src/Operation/Find.php (1 issue)

Labels
Severity
1
<?php
2
3
declare(strict_types=1);
4
5
namespace loophp\collection\Operation;
6
7
use Closure;
8
use Generator;
9
10
/**
11
 * @immutable
12
 *
13
 * @template TKey
14
 * @template T
15
 */
16
final class Find extends AbstractOperation
17
{
18
    /**
19
     * @template V
20
     *
21
     * @return Closure(V): Closure(callable(T, TKey, iterable<TKey, T>): bool ...): Closure(iterable<TKey, T>): Generator<TKey, T|V>
22
     */
23 10
    public function __invoke(): Closure
24
    {
25 10
        return
26
            /**
27
             * @param V $default
0 ignored issues
show
The type loophp\collection\Operation\V was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
28
             *
29
             * @return Closure(callable(T, TKey, iterable<TKey, T>): bool ...): Closure(iterable<TKey, T>): Generator<TKey, T|V>
30
             */
31 10
            static fn (mixed $default): Closure =>
32
                /**
33
                 * @param callable(T, TKey, iterable<TKey, T>): bool ...$callbacks
34
                 *
35
                 * @return Closure(iterable<TKey, T>): Generator<TKey, T|V>
36
                 */
37 10
                static function (callable ...$callbacks) use ($default): Closure {
38
                    /** @var Closure(iterable<TKey, T>): Generator<TKey, T|V> $pipe */
39 10
                    $pipe = (new Pipe())()(
40 10
                        (new Filter())()(...$callbacks),
41 10
                        (new Current())()(0)($default)
42 10
                    );
43
44
                    // Point free style.
45 10
                    return $pipe;
46 10
                };
47
    }
48
}
49