Tools::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 2
Code Lines 0

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 1
eloc 0
c 1
b 0
f 1
nc 1
nop 0
dl 0
loc 2
ccs 0
cts 0
cp 0
crap 2
rs 10
1
<?php
2
3
/**
4
 * Part of SplTypes package.
5
 *
6
 * (c) Adrien Loyant <[email protected]>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
declare(strict_types=1);
13
14
namespace Ducks\Component\SplTypes\Util;
15
16
use Ducks\Component\SplTypes\SplEnum;
17
18
final class Tools
19
{
20
    /**
21
     * @psalm-suppress UnusedConstructor
22
     *
23
     * @codeCoverageIgnore
24
     */
25
    private function __construct()
26
    {
27
    }
28
29
    /**
30
     * Checks if the spl enum has been defined
31
     *
32
     * @param string $class Checks if the enum has been defined
33
     * @param boolean $autoload Whether to autoload if not already loaded.
34
     *
35
     * @return boolean Returns true if enum is a defined enum, false otherwise.
36
     */
37 1
    public static function isSplEnumExists(string $class, bool $autoload = true): bool
38
    {
39 1
        return \class_exists($class, $autoload)
40 1
            && \is_a($class, SplEnum::class, true);
41
    }
42
}
43