Passed
Push — master ( 18cf56...d3208c )
by Bruno
07:03 queued 02:17
created

NamespaceTrait::getBaseNamespaces()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
eloc 1
c 0
b 0
f 0
dl 0
loc 3
ccs 0
cts 0
cp 0
rs 10
cc 1
nc 1
nop 0
crap 2
1
<?php declare(strict_types=1);
2
3
namespace Formularium\Factory;
4
5
trait NamespaceTrait
6
{
7
    /**
8
     * Namespaces to search
9
     *
10
     * @var string[]
11
     */
12
    protected static $baseNamespaces = [
13
        'Formularium'
14
    ];
15
16
    /**
17
     * External factory functions.
18
     *
19
     * @var callable[]
20
     */
21
    protected static $factories = [];
22
23
    public static function registerFactory(callable $factory): void
24
    {
25
        static::$factories[] = $factory;
26
    }
27
28
    /**
29
     * @param string $ns The namespace to add
30
     * @return void
31
     * @codeCoverageIgnore
32
     */
33
    public static function appendBaseNamespace(string $ns): void
34
    {
35
        static::$baseNamespaces[] = $ns;
36
    }
37
38
    /**
39
     * @return string[]
40
     * @codeCoverageIgnore
41
     */
42
    public static function getBaseNamespaces(): array
43
    {
44
        return static::$baseNamespaces;
45
    }
46
}
47