Doctrine\Common\Proxy\ProxyGenerator::generateCloneImpl PHP Method

generateCloneImpl() private method

Generates implementation for the __clone method of proxies.
private generateCloneImpl ( Doctrine\Common\Persistence\Mapping\ClassMetadata $class ) : string
$class Doctrine\Common\Persistence\Mapping\ClassMetadata
return string
    private function generateCloneImpl(ClassMetadata $class)
    {
        $hasParentClone = $class->getReflectionClass()->hasMethod('__clone');
        $inheritDoc = $hasParentClone ? '{@inheritDoc}' : '';
        $callParentClone = $hasParentClone ? "\n        parent::__clone();\n" : '';
        return <<<EOT
    /**
     * {$inheritDoc}
     */
    public function __clone()
    {
        \$this->__cloner__ && \$this->__cloner__->__invoke(\$this, '__clone', []);
{$callParentClone}    }
EOT;
    }