ConversionMap   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Importance

Changes 2
Bugs 1 Features 1
Metric Value
wmc 3
eloc 5
c 2
b 1
f 1
dl 0
loc 19
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A add() 0 3 1
A apply() 0 4 2
1
<?php
2
3
namespace Jackal\Copycat\Converter;
4
5
use Jackal\Copycat\Converter\ValueConverter\ConverterInterface;
6
7
/**
8
 * Class ConversionMap
9
 * @package Jackal\Copycat\Converter
10
 */
11
class ConversionMap
12
{
13
    protected $map = [];
14
15
    /**
16
     * @param callable|ConverterInterface $converter
17
     */
18
    public function add(callable $converter)
19
    {
20
        $this->map[] = $converter;
21
    }
22
23
    /**
24
     * @param array $values
25
     */
26
    public function apply(array &$values)
27
    {
28
        foreach ($this->map as $converter) {
29
            $values = $converter($values);
30
        }
31
    }
32
}
33