pExpr_Array() protected method

protected pExpr_Array ( PhpParser\Node\Expr\Array_ $node )
$node PhpParser\Node\Expr\Array_
Exemplo n.º 1
0
 /**
  * print an associative array
  */
 public function pExpr_Array(\PhpParser\Node\Expr\Array_ $node)
 {
     $multiLine = FALSE;
     $startLine = $node->getAttribute('startLine');
     $endLine = $node->getAttribute('endLine');
     if ($startLine != $endLine) {
         $multiLine = TRUE;
     }
     $printedNodes = '';
     foreach ($node->items as $itemNode) {
         $glueToken = ", ";
         if ($itemNode->getAttribute('startLine') != $startLine) {
             $glueToken = ',' . LF;
             $startLine = $itemNode->getAttribute('startLine');
         }
         if (!empty($printedNodes)) {
             $printedNodes .= $glueToken . $this->p($itemNode);
         } else {
             $printedNodes .= $this->p($itemNode);
         }
     }
     if ($multiLine) {
         $multiLinedItems = $this->indentToken . preg_replace('~\\n(?!$|' . $this->noIndentToken . ')~', LF . $this->indentToken, $printedNodes);
         return 'array(' . LF . $multiLinedItems . LF . ')';
     } else {
         return parent::pExpr_Array($node);
     }
 }