Exemplo n.º 1
0
 /**
  * @param CommentNode $astNode
  * @return bool
  */
 public function visitCommentNode(CommentNode $astNode)
 {
     $increment = $this->visitContext->countParentIds();
     $this->formatter->indent($increment, $this->dotWriter);
     $nodeId = $this->buildNumberedDOTIdentifier('"comment[%s]"', $this->visitContext);
     $parentId = $this->visitContext->peekParentId();
     $this->dotWriter->writeEdgeStatement($parentId, $nodeId);
     $this->formatter->whitespace(1, $this->dotWriter);
     //formatting options
     $this->dotWriter->writeStatementTerminator();
     return true;
 }
Exemplo n.º 2
0
 /**
  * @param GroupNode $astNode
  *
  * @return bool
  */
 public function visitGroupNode(GroupNode $astNode)
 {
     $increment = $this->visitContext->countParentIds();
     $this->formatter->indent($increment, $this->dotWriter);
     $nodeId = $this->buildNumberedDOTIdentifier('"grouped_expression[%s]"', $this->visitContext);
     $parentId = $this->visitContext->peekParentId();
     $this->dotWriter->writeEdgeStatement($parentId, $nodeId);
     $this->formatter->whitespace(1, $this->dotWriter);
     //formatting options
     $this->dotWriter->writeStatementTerminator();
     if (0 < $astNode->countChildren()) {
         $this->visitContext->pushParentId($nodeId);
     }
     return true;
 }
Exemplo n.º 3
0
 /**
  * @param SyntaxNode $astNode
  * @return bool
  */
 public function postVisitSyntaxNode(SyntaxNode $astNode)
 {
     $this->dotWriter->closeGraph();
     $this->visitContext->popParentId();
     return true;
 }
Exemplo n.º 4
0
 public function whitespace($size, DotWriter $dotWriter)
 {
     $dotWriter->writeWhitespace($size);
     return $this;
 }