Code Coverage
 
Lines
Branches
Paths
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
ShapeDefinition
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
 __construct
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3declare(strict_types=1);
4
5namespace Celemas\Sire;
6
7use Closure;
8
9/** @internal */
10final readonly class ShapeDefinition
11{
12    /**
13     * @param array<string, Field> $fields
14     * @param list<Closure(array<array-key, mixed>): array<array-key, mixed>> $prepareCallbacks
15     * @param list<Closure(Review): void> $reviewCallbacks
16     */
17    public function __construct(
18        public bool $list,
19        public Extra $extra,
20        public CoercionMode $coercionMode,
21        public array $fields,
22        public Contract\RuleRegistry $rules,
23        public Contract\CoercerRegistry $coercers,
24        public Contract\RuleParser $ruleParser,
25        public MessageFormatter $messageFormatter,
26        public array $prepareCallbacks,
27        public array $reviewCallbacks,
28    ) {}
29}