CanBeFloat::or()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 5
nc 1
nop 1
dl 0
loc 6
rs 10
c 1
b 0
f 0
1
<?php
2
declare(strict_types=1);
3
4
namespace Stratadox\Hydration\Mapping\Simple\Type;
5
6
use Stratadox\Hydration\Mapping\Composite\CompositeMapping;
7
use Stratadox\Hydration\Mapping\Composite\ConditionalMapping;
8
use Stratadox\Hydration\Mapping\Primitive\FloatCheck;
9
use Stratadox\Hydration\Mapping\Primitive\FloatMapping;
10
use Stratadox\HydrationMapping\Mapping;
11
12
final class CanBeFloat
13
{
14
    public static function or(Mapping $mapping): Mapping
15
    {
16
        return CompositeMapping::either(ConditionalMapping::ensureThat(
17
            FloatCheck::passes(),
18
            FloatMapping::inProperty($mapping->name())
19
        ), $mapping);
20
    }
21
}
22