Passed
Push — master ( 924412...d4b74b )
by Jesse
02:02
created

CanBeBoolean   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 18
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 8
dl 0
loc 18
rs 10
c 1
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A or() 0 5 1
A orCustom() 0 8 1
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