InvalidSymbolCodeException   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 2
eloc 5
c 1
b 0
f 0
dl 0
loc 25
ccs 6
cts 6
cp 1
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A getAttribute() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Remorhaz\Lexer\Runtime\IO\Exception;
6
7
use DomainException;
8
use Remorhaz\Lexer\Runtime\Token\AttributeInterface;
9
use Throwable;
10
11
final class InvalidSymbolCodeException extends DomainException implements ExceptionInterface
12
{
13
14
    /**
15
     * @var AttributeInterface
16
     */
17
    private $attribute;
18
19
    /**
20
     * @param AttributeInterface $attribute
21
     * @param Throwable|null     $previous
22
     */
23 5
    public function __construct(AttributeInterface $attribute, Throwable $previous = null)
24
    {
25 5
        $this->attribute = $attribute;
26 5
        parent::__construct("Invalid symbol code", 0, $previous);
27 5
    }
28
29
    /**
30
     * @return AttributeInterface
31
     * @psalm-pure
32
     */
33 1
    public function getAttribute(): AttributeInterface
34
    {
35 1
        return $this->attribute;
36
    }
37
}
38