Joli\Jane\Reference\Replacer::replace PHP Метод

replace() публичный Метод

Replace all references for an object
public replace ( mixed $object, mixed $root = null )
$object mixed Object to replace
$root mixed Root object
    public function replace($object, $root = null)
    {
        if ($root === null) {
            $root = $object;
        }
        $resolver = $this->resolver;
        $replacer = $this;
        $replace = \Closure::bind(function () use($resolver, $object, $replacer, $root) {
            foreach ($this as &$value) {
                if ($value instanceof Reference) {
                    $value = $resolver->resolve($value, $root);
                } elseif (is_object($value)) {
                    $replacer->replace($value, $root);
                }
            }
        }, $object, $object);
        $replace();
    }