Issues (85)

src/Operation/Inits.php (2 issues)

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 Inits extends AbstractOperation
17
{
18
    /**
19
     * @return Closure(iterable<TKey, T>): Generator<int, list<array{0: TKey, 1: T}>>
20
     */
21 4
    public function __invoke(): Closure
22
    {
23
        /** @var Closure(iterable<TKey, T>): Generator<int, list<array{0: TKey, 1: T}>> $inits */
24 4
        $inits = (new Pipe())()(
25 4
            (new Pack())(),
26 4
            (new ScanLeft())()(
27
                /**
28
                 * @param list<array{0: TKey, 1: T}> $carry
0 ignored issues
show
The type loophp\collection\Operation\list 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...
29
                 * @param array{0: TKey, 1: T} $value
30
                 *
31
                 * @return list<array{0: TKey, 1: T}>
32
                 */
33 4
                static function (array $carry, array $value): array {
34 4
                    $carry[] = $value;
35
36 4
                    return $carry;
0 ignored issues
show
Bug Best Practice introduced by
The expression return $carry returns the type array<mixed,array> which is incompatible with the documented return type loophp\collection\Operation\list.
Loading history...
37 4
                }
38 4
            )([]),
39 4
            (new Normalize())()
40 4
        );
41
42
        // Point free style.
43 4
        return $inits;
44
    }
45
}
46