private static function fromRamseyUuid(\Ramsey\Uuid\Uuid $uuid)
    {
        return new self(
            $uuid->getFieldsHex(),
            $uuid->getNumberConverter(),
            \Ramsey\Uuid\Uuid::getFactory()->getCodec()
        );
    }
private static function fromRamseyUuid(\Ramsey\Uuid\Uuid $uuid)
    {
        return new self(
            $uuid->getFieldsHex(),
            $uuid->getNumberConverter(),
            \Ramsey\Uuid\Uuid::getFactory()->getCodec()
        );
    }
private static function fromRamseyUuid ( \ Ramsey \ Uuid \ Uuid $ uuid ) { return new self ( $ uuid -> getFieldsHex ( ) , $ uuid -> getNumberConverter ( ) , \ Ramsey \ Uuid \ Uuid :: getFactory ( ) -> getCodec ( ) ) ; }
Make sure the returned instance is a Rhumsaa\Uuid\Uuid which inherit
from the Ramsey namespace.

This is mandatory when using type hint in function and you want your
function works with both namespaces.

@param \Ramsey\Uuid\Uuid $uuid

@return Uuid
Make sure the returned instance is a Rhumsaa \ Uuid \ Uuid which inherit from the Ramsey namespace .