Doctrine\ODM\MongoDB\UnitOfWork::doDetach PHP Метод

doDetach() приватный Метод

Executes a detach operation on the given document.
private doDetach ( object $document, array &$visited )
$document object
$visited array
    private function doDetach($document, array &$visited)
    {
        $oid = spl_object_hash($document);
        if (isset($visited[$oid])) {
            return;
            // Prevent infinite recursion
        }
        $visited[$oid] = $document;
        // mark visited
        switch ($this->getDocumentState($document, self::STATE_DETACHED)) {
            case self::STATE_MANAGED:
                $this->removeFromIdentityMap($document);
                unset($this->documentInsertions[$oid], $this->documentUpdates[$oid], $this->documentDeletions[$oid], $this->documentIdentifiers[$oid], $this->documentStates[$oid], $this->originalDocumentData[$oid], $this->parentAssociations[$oid], $this->documentUpserts[$oid], $this->hasScheduledCollections[$oid], $this->embeddedDocumentsRegistry[$oid]);
                break;
            case self::STATE_NEW:
            case self::STATE_DETACHED:
                return;
        }
        $this->cascadeDetach($document, $visited);
    }
UnitOfWork