Chain::make()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 9
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 12

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 3
eloc 4
nc 3
nop 1
dl 0
loc 9
ccs 0
cts 3
cp 0
crap 12
rs 10
c 1
b 0
f 0
1
<?php
2
3
namespace Terranet\Administrator;
4
5
use Illuminate\Support\Arr;
6
7
class Chain
8
{
9
    /**
10
     * Create chain of responsibility.
11
     *
12
     * @param  array  $queue
13
     * @return mixed
14
     */
15
    public static function make(array $queue = [])
16
    {
17
        foreach ($queue as $i => &$instance) {
18
            if ($next = Arr::get($queue, $i + 1)) {
19
                $instance->setNext($next);
20
            }
21
        }
22
23
        return Arr::first($queue);
24
    }
25
}
26