public function get_declared_namespace_name( $stackPtr ) {

		// Check for the existence of the token.
		if ( false === $stackPtr || ! isset( $this->tokens[ $stackPtr ] ) ) {
			return false;
		}

		if ( \T_NAMESPACE !== $this->tokens[ $stackPtr ]['code'] ) {
			return false;
		}

		$nextToken = $this->phpcsFile->findNext( Tokens::$emptyTokens, ( $stackPtr + 1 ), null, true, null, true );
		if ( \T_NS_SEPARATOR === $this->tokens[ $nextToken ]['code'] ) {
			// Not a namespace declaration, but use of, i.e. `namespace\someFunction();`.
			return false;
		}

		if ( \T_OPEN_CURLY_BRACKET === $this->tokens[ $nextToken ]['code'] ) {
			// Declaration for global namespace when using multiple namespaces in a file.
			// I.e.: `namespace {}`.
			return '';
		}

		// Ok, this should be a namespace declaration, so get all the parts together.
		$acceptedTokens = array(
			\T_STRING       => true,
			\T_NS_SEPARATOR => true,
		);
		$validTokens    = $acceptedTokens + Tokens::$emptyTokens;

		$namespaceName = '';
		while ( isset( $validTokens[ $this->tokens[ $nextToken ]['code'] ] ) ) {
			if ( isset( $acceptedTokens[ $this->tokens[ $nextToken ]['code'] ] ) ) {
				$namespaceName .= trim( $this->tokens[ $nextToken ]['content'] );
			}
			++$nextToken;
		}

		return $namespaceName;
	}
public function get_declared_namespace_name( $stackPtr ) {

		// Check for the existence of the token.
		if ( false === $stackPtr || ! isset( $this->tokens[ $stackPtr ] ) ) {
			return false;
		}

		if ( \T_NAMESPACE !== $this->tokens[ $stackPtr ]['code'] ) {
			return false;
		}

		$nextToken = $this->phpcsFile->findNext( Tokens::$emptyTokens, ( $stackPtr + 1 ), null, true, null, true );
		if ( \T_NS_SEPARATOR === $this->tokens[ $nextToken ]['code'] ) {
			// Not a namespace declaration, but use of, i.e. `namespace\someFunction();`.
			return false;
		}

		if ( \T_OPEN_CURLY_BRACKET === $this->tokens[ $nextToken ]['code'] ) {
			// Declaration for global namespace when using multiple namespaces in a file.
			// I.e.: `namespace {}`.
			return '';
		}

		// Ok, this should be a namespace declaration, so get all the parts together.
		$acceptedTokens = array(
			\T_STRING       => true,
			\T_NS_SEPARATOR => true,
		);
		$validTokens    = $acceptedTokens + Tokens::$emptyTokens;

		$namespaceName = '';
		while ( isset( $validTokens[ $this->tokens[ $nextToken ]['code'] ] ) ) {
			if ( isset( $acceptedTokens[ $this->tokens[ $nextToken ]['code'] ] ) ) {
				$namespaceName .= trim( $this->tokens[ $nextToken ]['content'] );
			}
			++$nextToken;
		}

		return $namespaceName;
	}
public function get_declared_namespace_name ( $ stackPtr ) { // Check for the existence of the token. if ( false === $ stackPtr || ! isset ( $ this -> tokens [ $ stackPtr ] ) ) { return false ; } if ( \ T_NAMESPACE !== $ this -> tokens [ $ stackPtr ] [ 'code' ] ) { return false ; } $ nextToken = $ this -> phpcsFile -> findNext ( Tokens :: $ emptyTokens , ( $ stackPtr + 1 ) , null , true , null , true ) ; if ( \ T_NS_SEPARATOR === $ this -> tokens [ $ nextToken ] [ 'code' ] ) { // Not a namespace declaration, but use of, i.e. `namespace\someFunction();`. return false ; } if ( \ T_OPEN_CURLY_BRACKET === $ this -> tokens [ $ nextToken ] [ 'code' ] ) { // Declaration for global namespace when using multiple namespaces in a file. // I.e.: `namespace {}`. return '' ; } // Ok, this should be a namespace declaration, so get all the parts together. $ acceptedTokens = array ( \ T_STRING => true , \ T_NS_SEPARATOR => true , ) ; $ validTokens = $ acceptedTokens + Tokens :: $ emptyTokens ; $ namespaceName = '' ; while ( isset ( $ validTokens [ $ this -> tokens [ $ nextToken ] [ 'code' ] ] ) ) { if ( isset ( $ acceptedTokens [ $ this -> tokens [ $ nextToken ] [ 'code' ] ] ) ) { $ namespaceName .= trim ( $ this -> tokens [ $ nextToken ] [ 'content' ] ) ; } ++ $ nextToken ; } return $ namespaceName ; }
Get the complete namespace name for a namespace declaration.

For hierarchical namespaces, the name will be composed of several tokens,
i.e. MyProject\Sub\Level which will be returned together as one string.

@since 0.12.0 A lesser variant of this method previously existed in the
`AbstractClassRestrictionsSniff` class.

@param int|bool $stackPtr The position of a T_NAMESPACE token.

@return string|false Namespace name or false if not a namespace declaration.
Namespace name can be an empty string for global namespace declaration.
Get the complete namespace name for a namespace declaration .