CliServiceProvider   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 2
dl 0
loc 19
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A __invoke() 0 16 2
1
<?php
2
3
namespace Schnittstabil\Dartisan\ServiceProviders;
4
5
use Garden\Cli\Cli;
6
use Garden\Cli\Args;
7
use Schnittstabil\Dartisan\Container;
8
9
/**
10
 * @SuppressWarnings(PHPMD.ShortVariable)
11
 */
12
class CliServiceProvider
13
{
14
    public function __invoke(Container $container)
15
    {
16
        $container->set(Cli::class, function (Container $c) {
17
            $cli = new Cli();
18
19
            foreach ($c->get('commands') as $class) {
20
                $class::register($cli);
21
            }
22
23
            return $cli;
24
        });
25
26
        $container->set(Args::class, function (Container $c) {
27
            return $c->get(Cli::class)->parse($c->get('argv'), true);
28
        });
29
    }
30
}
31