protected function lexName(int $line, int $column, Token $prev): Token
    {
        $start = $this->position;

        ++$this->position;

        while ($this->position !== $this->bodyLength &&
            ($code = $this->readCharCode($this->position)) !== 0 &&
            isAlphaNumeric($code)) {
            ++$this->position;
        }

        $value = sliceString($this->body, $start, $this->position);

        return new Token(TokenKindEnum::NAME, $start, $this->position, $line, $column, $prev, $value);
    }
protected function lexName(int $line, int $column, Token $prev): Token
    {
        $start = $this->position;

        ++$this->position;

        while ($this->position !== $this->bodyLength &&
            ($code = $this->readCharCode($this->position)) !== 0 &&
            isAlphaNumeric($code)) {
            ++$this->position;
        }

        $value = sliceString($this->body, $start, $this->position);

        return new Token(TokenKindEnum::NAME, $start, $this->position, $line, $column, $prev, $value);
    }
protected function lexName ( int $ line , int $ column , Token $ prev ) : Token { $ start = $ this -> position ; ++ $ this -> position ; while ( $ this -> position !== $ this -> bodyLength && ( $ code = $ this -> readCharCode ( $ this -> position ) ) !== 0 && isAlphaNumeric ( $ code ) ) { ++ $ this -> position ; } $ value = sliceString ( $ this -> body , $ start , $ this -> position ) ; return new Token ( TokenKindEnum :: NAME , $ start , $ this -> position , $ line , $ column , $ prev , $ value ) ; }
Reads a name token from the source file.

@param int   $line
@param int   $column
@param Token $prev
@return Token
Reads a name token from the source file .