fileLocator = $fileLocator; $this->emptyErrorHandler = static function (int $type, string $message, string $file, int $line) { if (error_reporting() & $type) { throw new \ErrorException($message, 0, $type, $file, $line); } }; } /** * Write generated code to disk and return the class code * * {@inheritDoc} * * @throws FileNotWritableException */ public function generate(ClassGenerator $classGenerator): string { $generatedCode = $classGenerator->generate(); assert(is_string($generatedCode)); $className = $classGenerator->getNamespaceName() . '\\' . $classGenerator->getName(); $fileName = $this->fileLocator->getProxyFileName($className); set_error_handler($this->emptyErrorHandler); try { (new Filesystem())->dumpFile($fileName, "