Classes/Console/Service/XsdGenerator.php
protected function getClassNamesInPaths(array $paths)
    {
        $viewHelperClassFiles = [];
        foreach ($paths as $path) {
            $viewHelperClassFiles = array_merge(
                $viewHelperClassFiles,
                GeneralUtility::getAllFilesAndFoldersInPath(
                    [],
                    $path,
                    'php'
                )
            );
        }
        $affectedViewHelperClassNames = [];
        foreach ($viewHelperClassFiles as $filePathAndFilename) {
            try {
                $potentialViewHelperClassName = $this->getClassNameFromFile($filePathAndFilename);
            } catch (ParsingException $e) {
                continue;
            }
            if (strpos($potentialViewHelperClassName, 'ViewHelpers') === false) {
                continue;
            }
            if (
                is_subclass_of($potentialViewHelperClassName, \TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper::class)
                || is_subclass_of($potentialViewHelperClassName, \TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper::class)
            ) {
                if (!class_exists($potentialViewHelperClassName)) {
                    require $filePathAndFilename;
                }
                $classReflection = new \ReflectionClass($potentialViewHelperClassName);
                if ($classReflection->isAbstract() === true) {
                    continue;
                }
                $affectedViewHelperClassNames[] = $potentialViewHelperClassName;
            }
        }
        sort($affectedViewHelperClassNames);

        return $affectedViewHelperClassNames;
    }
protected function getClassNamesInPaths(array $paths)
    {
        $viewHelperClassFiles = [];
        foreach ($paths as $path) {
            $viewHelperClassFiles = array_merge(
                $viewHelperClassFiles,
                GeneralUtility::getAllFilesAndFoldersInPath(
                    [],
                    $path,
                    'php'
                )
            );
        }
        $affectedViewHelperClassNames = [];
        foreach ($viewHelperClassFiles as $filePathAndFilename) {
            try {
                $potentialViewHelperClassName = $this->getClassNameFromFile($filePathAndFilename);
            } catch (ParsingException $e) {
                continue;
            }
            if (strpos($potentialViewHelperClassName, 'ViewHelpers') === false) {
                continue;
            }
            if (
                is_subclass_of($potentialViewHelperClassName, \TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper::class)
                || is_subclass_of($potentialViewHelperClassName, \TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper::class)
            ) {
                if (!class_exists($potentialViewHelperClassName)) {
                    require $filePathAndFilename;
                }
                $classReflection = new \ReflectionClass($potentialViewHelperClassName);
                if ($classReflection->isAbstract() === true) {
                    continue;
                }
                $affectedViewHelperClassNames[] = $potentialViewHelperClassName;
            }
        }
        sort($affectedViewHelperClassNames);

        return $affectedViewHelperClassNames;
    }
Get all class names inside this namespace and return them as array.
This has to be done by iterating over class files for TYPO3
as the Extbase Reflection Service cannot return all implementations
of Fluid AbstractViewHelpers

@param array $paths
@return array Array of all class names inside a given namespace.