schemator-php
36 строк · 951.0 Байт
1<?php
2
3declare(strict_types=1);
4
5namespace Smoren\Schemator\Factories;
6
7use Smoren\Schemator\Components\NestedAccessor;
8use Smoren\Schemator\Interfaces\NestedAccessorFactoryInterface;
9use Smoren\Schemator\Interfaces\NestedAccessorInterface;
10
11class NestedAccessorFactory implements NestedAccessorFactoryInterface
12{
13/**
14* {@inheritDoc}
15*/
16public static function create(&$source, string $pathDelimiter = '.'): NestedAccessorInterface
17{
18return new NestedAccessor($source, $pathDelimiter);
19}
20
21/**
22* {@inheritDoc}
23*/
24public static function fromArray(array &$source, string $pathDelimiter = '.'): NestedAccessorInterface
25{
26return static::create($source, $pathDelimiter);
27}
28
29/**
30* {@inheritDoc}
31*/
32public static function fromObject(object &$source, string $pathDelimiter = '.'): NestedAccessorInterface
33{
34return static::create($source, $pathDelimiter);
35}
36}
37