*/ public function register() { return [\T_NAMESPACE]; } /** * Processes this test, when one of its tokens is encountered. * * @since 1.0.0 * * @param \PHP_CodeSniffer\Files\File $phpcsFile The file being scanned. * @param int $stackPtr The position of the current token * in the stack passed in $tokens. * * @return void */ public function process(File $phpcsFile, $stackPtr) { $name = Namespaces::getDeclaredName($phpcsFile, $stackPtr); if ($name === false) { // Use of the namespace keyword as an operator or live coding/parse error. return; } if ($name !== '') { // Named namespace. $phpcsFile->recordMetric($stackPtr, self::METRIC_NAME, 'yes'); return; } $phpcsFile->recordMetric($stackPtr, self::METRIC_NAME, 'no'); // Namespace declaration without namespace name (= global namespace). $phpcsFile->addError( 'Namespace declarations without a namespace name are not allowed.', $stackPtr, 'Forbidden' ); } }