Game   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Coupling/Cohesion

Dependencies 4
Metric Value
wmc 1
cbo 4
dl 0
loc 19
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A play() 0 13 1
1
<?php
2
3
namespace FizzBuzzDomain;
4
5
use GameDomain\Game\AbstractGame;
6
use GameDomain\Round\AbstractRound;
7
use GameDomain\Round\RoundResultCollection;
8
use GameDomain\Round\RoundCollection;
9
10
/**
11
 * Game
12
 */
13
final class Game extends AbstractGame
14
{
15
    /**
16
     * {@inheritDoc}
17
     */
18
    public function play(RoundCollection $rounds)
19
    {
20
        $gameRules = $this->gameRules;
21
22
        return new RoundResultCollection(
23
            array_map(
24
                function (AbstractRound $round) use ($gameRules) {
25
                    return $round->play($gameRules);
26
                },
27
                $rounds->toArray()
28
            )
29
        );
30
    }
31
}
32