Rs\Json\Patch\Operations\Move::perform PHP Метод

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

public perform ( string $targetDocument ) : string
$targetDocument string
Результат string
    public function perform($targetDocument)
    {
        $pointer = new Pointer($targetDocument);
        try {
            $get = $pointer->get($this->getFrom());
        } catch (NonexistentValueReferencedException $e) {
            return $targetDocument;
        }
        if ($this->getFrom() === $this->getPath()) {
            return $targetDocument;
        }
        $removeOperation = new \stdClass();
        $removeOperation->path = $this->getFrom();
        $remove = new Remove($removeOperation);
        $targetDocument = $remove->perform($targetDocument);
        $addOperation = new \stdClass();
        $addOperation->path = $this->getPath();
        $addOperation->value = $get;
        $add = new Add($addOperation);
        return $add->perform($targetDocument);
    }