Passed
Push — main ( 045e26...facf4a )
by Breno
01:43
created

IsEmpty::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 2
dl 0
loc 5
rs 10
c 0
b 0
f 0
1
<?php
2
declare(strict_types=1);
3
4
namespace BrenoRoosevelt\Validation\Rules;
5
6
use Attribute;
7
use BrenoRoosevelt\Validation\AbstractRule;
8
use BrenoRoosevelt\Validation\StopSign;
9
10
#[Attribute(Attribute::TARGET_PROPERTY|Attribute::TARGET_METHOD)]
11
class IsEmpty extends AbstractRule
12
{
13
    const MESSAGE = 'Value should be empty';
14
15
    public function isValid($input, array $context = []): bool
16
    {
17
        if (is_object($input)) {
18
            return false;
19
        }
20
21
        if ((is_array($input) || is_string($input)) && empty($input)) {
22
            return true;
23
        }
24
25
        return false;
26
    }
27
}
28