Singletons::make()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 2
eloc 4
c 1
b 0
f 0
nc 2
nop 1
dl 0
loc 7
rs 10
ccs 5
cts 5
cp 1
crap 2
1
<?php
2
3
namespace Imanghafoori\HeyMan\Boot;
4
5
use Imanghafoori\HeyMan\Core\Chain;
6
use Imanghafoori\HeyMan\Core\ChainCollection;
7
use Imanghafoori\HeyMan\Core\Condition;
8
use Imanghafoori\HeyMan\Core\ConditionsFacade;
9
use Imanghafoori\HeyMan\Core\Reaction;
10
use Imanghafoori\HeyMan\Core\ReactionFactory;
11
use Imanghafoori\HeyMan\HeyMan;
12
use Imanghafoori\HeyMan\Switching\HeyManSwitcher;
13
14
class Singletons
15
{
16
    protected static $singletons = [
17
        Chain::class,
18
        HeyMan::class,
19
        Reaction::class,
20
        Condition::class,
21
        HeyManSwitcher::class,
22
        ReactionFactory::class,
23
        ConditionsFacade::class,
24
    ];
25
26 121
    public static function make($app)
27
    {
28 121
        foreach (self::$singletons as $class) {
29 121
            $app->singleton($class);
30
        }
31 121
        $app->singleton('heyman.chain', Chain::class);
32 121
        $app->singleton('heyman.chains', ChainCollection::class);
33 121
    }
34
}
35