CanBeBoolean::or()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 4
nc 1
nop 1
dl 0
loc 5
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\Primitive\BooleanMapping;
8
use Stratadox\HydrationMapping\Mapping;
9
10
final class CanBeBoolean
11
{
12
    public static function or(Mapping $mapping): Mapping
13
    {
14
        return CompositeMapping::either(
15
            BooleanMapping::inProperty($mapping->name()),
16
            $mapping
17
        );
18
    }
19
20
    public static function orCustom(
21
        Mapping $mapping,
22
        array $truths,
23
        array $falsehoods
24
    ): Mapping {
25
        return CompositeMapping::either(
26
            BooleanMapping::custom($mapping->name(), $truths, $falsehoods),
27
            $mapping
28
        );
29
    }
30
}
31