src/Language/AST/Node.php
private function cloneValue($value)
    {
        if (is_array($value)) {
            $cloned = [];
            foreach ($value as $key => $arrValue) {
                $cloned[$key] = $this->cloneValue($arrValue);
            }
        } elseif ($value instanceof self) {
            $cloned = clone $value;
            foreach (get_object_vars($cloned) as $prop => $propValue) {
                $cloned->{$prop} = $this->cloneValue($propValue);
            }
        } else {
            $cloned = $value;
        }

        return $cloned;
    }
private function cloneValue($value)
    {
        if (is_array($value)) {
            $cloned = [];
            foreach ($value as $key => $arrValue) {
                $cloned[$key] = $this->cloneValue($arrValue);
            }
        } elseif ($value instanceof self) {
            $cloned = clone $value;
            foreach (get_object_vars($cloned) as $prop => $propValue) {
                $cloned->{$prop} = $this->cloneValue($propValue);
            }
        } else {
            $cloned = $value;
        }

        return $cloned;
    }
private function cloneValue ( $ value ) { if ( is_array ( $ value ) ) { $ cloned = [ ] ; foreach ( $ value as $ key => $ arrValue ) { $ cloned [ $ key ] = $ this -> cloneValue ( $ arrValue ) ; } } elseif ( $ value instanceof self ) { $ cloned = clone $ value ; foreach ( get_object_vars ( $ cloned ) as $ prop => $ propValue ) { $ cloned -> { $ prop } = $ this -> cloneValue ( $ propValue ) ; } } else { $ cloned = $ value ; } return $ cloned ; }
@param string|NodeList|Location|Node|(Node|NodeList|Location)[] $value

@return string|NodeList|Location|Node
@param string|NodeList|Location|Node| ( Node|NodeList|Location ) [] $value