/**
  * This method parses a single while-statement node.
  *
  * @return \PDepend\Source\AST\ASTWhileStatement
  * @since  0.9.8
  */
 private function parseWhileStatement()
 {
     $this->tokenStack->push();
     $token = $this->consumeToken(Tokens::T_WHILE);
     $stmt = $this->builder->buildAstWhileStatement($token->image);
     $stmt->addChild($this->parseParenthesisExpression());
     return $this->setNodePositionsAndReturn($this->parseStatementBody($stmt));
 }