Completed
Push — master ( 4b4c57...035a27 )
by Rafael
03:03
created

CallableNamingStrategy::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 1
1
<?php
2
3
/**
4
 * LICENSE: This file is subject to the terms and conditions defined in
5
 * file 'LICENSE', which is part of this source code package.
6
 *
7
 * @copyright 2016 Copyright(c) - All rights reserved.
8
 */
9
10
namespace Rafrsr\LibArray2Object\Naming;
11
12
class CallableNamingStrategy implements NamingStrategyInterface
13
{
14
    /**
15
     * @var callable
16
     */
17
    protected $parserCallback;
18
19
    /**
20
     * CallableParser constructor.
21
     *
22
     * @param callable $parserCallback
23
     */
24
    public function __construct(callable $parserCallback)
25
    {
26
        $this->parserCallback = $parserCallback;
27
    }
28
29
    /**
30
     * @inheritDoc
31
     */
32
    public function transformName($name)
33
    {
34
        return call_user_func($this->parserCallback, $name);
35
    }
36
}