ReacterableInvalid::notImplementInterface()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 5
c 1
b 0
f 0
dl 0
loc 8
rs 10
cc 1
nc 1
nop 1
1
<?php
2
3
/*
4
 * This file is part of PHP Contracts: Love.
5
 *
6
 * (c) Anton Komarev <[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 Cog\Contracts\Love\Reacterable\Exceptions;
15
16
use Cog\Contracts\Love\Exceptions\LoveThrowable;
17
use Cog\Contracts\Love\Reacterable\Models\Reacterable;
18
use RuntimeException;
19
20
final class ReacterableInvalid extends RuntimeException implements
21
    LoveThrowable
22
{
23
    public static function classNotExists(
24
        string $type,
25
    ): self {
26
        return new self(
27
            sprintf(
28
                '[%s] class or morph map not found.',
29
                $type,
30
            ),
31
        );
32
    }
33
34
    public static function notImplementInterface(
35
        string $type,
36
    ): self {
37
        return new self(
38
            sprintf(
39
                '[%s] must implement `%s` contract.',
40
                $type,
41
                Reacterable::class,
42
            ),
43
        );
44
    }
45
}
46