InvalidFlagException::getValidFlags()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 9
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 9
ccs 5
cts 5
cp 1
rs 9.6666
c 0
b 0
f 0
cc 2
eloc 5
nc 2
nop 1
crap 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