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:----a1UYtdwlS7sMDC2Owh+9qzZZLhi/JRHc7Z77n786O0xncJlw2vmHEAoSVLJJbrWmGvkN7errfmqMLcOSLupFhnowYSUkKs0AZyA1MVPykPeUVa7VoQpkefB7C4lURnR6YmqfNsoYuDMCZWU0pK36VEbbt6pv8StdkS8pjV+wYVM2IiheZY/zvDbJjpekPieVSKHYB8aWxmzZXkWXqZDTYohEZLqnQtiGncCC7YeeV2UJCe5AakNNCvEHjwiIdaKAWaURKypB1Vwbu41P3Yi1y5qrspO9gO8wXxMZQp4hfBZfChgcGVVaQSQzyVBTNQn8F3+FzTN82PgC97ShHJ3BpoElDc/476mLq/GLgXTR+3t1hJDbc0aANbjY3DP39NqgQ9JTlKWs9nSFjuMm/fdTP2/d5h6Qct5Hc8iseo5eabhKLlHn6NkGSiKQ19C2pa3I/tM3Af0WHGjLl5jYZNWHqsNseD3T628xkN1jzpk1yselYU/2INg7E1MML4GX/1fXKWQiOLVohdjA3zXp8F3uXow1PhT8ekRzyiQvFaTS4tmy+OX/vCwTHtmkfNyOiAOti93E4hHqHd99FBXWntTmfV3Yh1/opQtELHLW9SElhVH+7ZDwLnOaVgMQCpMgYYcY988oMwcoFmBB3dcWeVBEGdI7z5p0orFDjq68PbJpJtQ=----ATTACHMENT:----Njk5OTc0MDIyOTA2OTI1IDUxMTQ4ODQ3NDY5MzgzNjggMzA2MDI5MDEyMTQ1NDUwMA==