Passed
Push — master ( 72f38a...596bea )
by Smoren
02:21
created

SilentNestedAccessorFactory::create()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 1
c 1
b 0
f 0
nc 1
nop 2
dl 0
loc 3
rs 10
1
<?php
2
3
namespace Smoren\NestedAccessor\Factories;
4
5
use Smoren\NestedAccessor\Components\SilentNestedAccessor;
6
use Smoren\NestedAccessor\Interfaces\SilentNestedAccessorFactoryInterface;
7
use Smoren\NestedAccessor\Interfaces\SilentNestedAccessorInterface;
8
9
/**
10
 * Class NestedAccessorFactory
11
 * @author Smoren <[email protected]>
12
 */
13
class SilentNestedAccessorFactory implements SilentNestedAccessorFactoryInterface
14
{
15
    /**
16
     * @inheritDoc
17
     */
18
    public static function create(&$source, string $pathDelimiter = '.'): SilentNestedAccessorInterface
19
    {
20
        return new SilentNestedAccessor($source, $pathDelimiter);
21
    }
22
23
    /**
24
     * @inheritDoc
25
     */
26
    public static function fromArray(array &$source, string $pathDelimiter = '.'): SilentNestedAccessorInterface
27
    {
28
        return static::create($source, $pathDelimiter);
29
    }
30
31
    /**
32
     * @inheritDoc
33
     */
34
    public static function fromObject(object &$source, string $pathDelimiter = '.'): SilentNestedAccessorInterface
35
    {
36
        return static::create($source, $pathDelimiter);
37
    }
38
}
39