InvalidFlagException   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 34
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 4
lcom 0
cbo 0
dl 0
loc 34
ccs 10
cts 10
cp 1
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 10 2
A getValidFlags() 0 9 2
1
<?php
2
namespace Hyphper\Frame\Exception;
3
4
class InvalidFlagException extends \Exception
5
{
6
    /**
7
     * InvalidFlagException constructor.
8
     *
9
     * @param string $flag
10
     * @param int $valid_flags
11
     */
12 3
    public function __construct($flag, $valid_flags)
13
    {
14 3
        parent::__construct(
15
            sprintf(
16 3
                "Unexpected flag: 0x%02x. Valid flags are: %s",
17
                $flag,
18 3
                ($valid_flags) ? $this->getValidFlags($valid_flags) : "none"
19
            )
20
        );
21 3
    }
22
23
    /**
24
     * @param $valid_flags
25
     *
26
     * @return string
27
     */
28 2
    protected function getValidFlags($valid_flags)
29
    {
30 2
        $flags = [];
31 2
        foreach ($valid_flags as $flag) {
32 2
            $flags[] = sprintf('0x%02x', $flag);
33
        }
34
35 2
        return implode(', ', $flags);
36
    }
37
}
38