function TokenParser::next

Gets the next non whitespace and non comment token.

Parameters

bool $docCommentIsComment If TRUE then a doc comment is considered a comment and skipped.: If FALSE then only whitespace and normal comments are skipped.

Return value

mixed[]|string|null The token if exists, null otherwise.

3 calls to TokenParser::next()
TokenParser::parseNamespace in core/lib/Drupal/Component/Annotation/Doctrine/TokenParser.php
Gets the namespace.
TokenParser::parseUseStatement in core/lib/Drupal/Component/Annotation/Doctrine/TokenParser.php
Parses a single use statement.
TokenParser::parseUseStatements in core/lib/Drupal/Component/Annotation/Doctrine/TokenParser.php
Gets all use statements.

File

core/lib/Drupal/Component/Annotation/Doctrine/TokenParser.php, line 96

Class

TokenParser
Parses a file for namespaces/use/class declarations.

Namespace

Drupal\Component\Annotation\Doctrine

Code

public function next(bool $docCommentIsComment = true) {
  for ($i = $this->pointer; $i < $this->numTokens; $i++) {
    $this->pointer++;
    if ($this->tokens[$i][0] === T_WHITESPACE || $this->tokens[$i][0] === T_COMMENT || $docCommentIsComment && $this->tokens[$i][0] === T_DOC_COMMENT) {
      continue;
    }
    return $this->tokens[$i];
  }
  return null;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.