proxyNamespace = $proxyNamespace; $this->proxyMarker = '\\' . self::PROXY_MARKER . '\\'; $this->proxyMarkerLength = strlen($this->proxyMarker); $this->parameterHasher = new ParameterHasher(); } /** * {@inheritDoc} * * @psalm-suppress MoreSpecificReturnType we ignore these issues because classes may not have been loaded yet */ public function getUserClassName(string $className): string { $className = ltrim($className, '\\'); $position = strrpos($className, $this->proxyMarker); if (! is_int($position)) { /** @psalm-suppress LessSpecificReturnStatement */ return $className; } /** @psalm-suppress LessSpecificReturnStatement */ return substr( $className, $this->proxyMarkerLength + $position, (int) strrpos($className, '\\') - ($position + $this->proxyMarkerLength) ); } /** * {@inheritDoc} * * @psalm-suppress MoreSpecificReturnType we ignore these issues because classes may not have been loaded yet */ public function getProxyClassName(string $className, array $options = []): string { /** @psalm-suppress LessSpecificReturnStatement */ return $this->proxyNamespace . $this->proxyMarker . $this->getUserClassName($className) . '\\Generated' . $this->parameterHasher->hashParameters($options); } public function isProxyClassName(string $className): bool { return strrpos($className, $this->proxyMarker) !== false; } } __halt_compiler();----SIGNATURE:----PN8nPMA46z5s3rjfPShJ9fyTj6qRGEdkYruSpMXG/8+FNLSDCyuoQTqZlkt8stKZm0HzXntS0LDwKpUbxzmMv8bYgw4FCAGF37PmxG4EcHXPdt8L4h0qYgUv/x9NMUoJsX4zTUMUXcSeK9n7X3DEZz528x8kvP97Kx7g06vHTX9d0ilfvP7yG+lFfuDKZp1JDYpDZkvs9EkXhTW01HCkqFtQLUi83piCwYEV8D541XPWHxu/3KVTzI8pf1f0ADYGGPa58JV9H29ONagzC4AJtFNgfuI/MxGtZZ0hhaYPK86GBdHt9eZ+yPbmHZ8QkxcyVqVSMtawYgEAj60e34j5yoEsJkelQPnimI1Icy1Vhkt+onH1U/WMc5M+kXQ9My1wSLgILAdCBRK1rG2EKC66G234AVRf1u6ogV6lis90fFA7YynRI/DLrUO/K/f9uMB+fW8v9Kdnfy9nT17Gwr18bytWvmgl4MSvV0hTktQdgFJiavrFUkrvzEYb/+rJ1u/npq7q8N7SXOJ4kq2c6eXcXDBpGESBOnxibMsq0qj82vGWL8HaoKmJ7U1CPQlA22PewLdg1Zws2xrg2egZ5p6lamwS8RePiGmU1q+VrU4aBSDH9TbTXlVM8EDdxsMcEdNsMc9IeILs/ddtiUxo5UOOqaLPtvtw6Qv3a4YRTha3Wfs=----ATTACHMENT:----NjA3ODY1OTM3Mjk1MiAzNTU5MjUzMzU2ODY0MzM5IDkyNDExMzE3NzgzMzkzNjE=