Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / vendor / nikic / php-parser / lib / PhpParser / Node / Expr / StaticCall.php
index 5118f34a70e525e957d7187f51ca790925ac8058..5dc2d31617490ee7709497777a14bbbf92fbf1fe 100644 (file)
@@ -1,15 +1,16 @@
-<?php
+<?php declare(strict_types=1);
 
 namespace PhpParser\Node\Expr;
 
 use PhpParser\Node;
 use PhpParser\Node\Expr;
+use PhpParser\Node\Identifier;
 
 class StaticCall extends Expr
 {
     /** @var Node\Name|Expr Class name */
     public $class;
-    /** @var string|Expr Method name */
+    /** @var string|Identifier|Expr Method name */
     public $name;
     /** @var Node\Arg[] Arguments */
     public $args;
@@ -17,19 +18,23 @@ class StaticCall extends Expr
     /**
      * Constructs a static method call node.
      *
-     * @param Node\Name|Expr $class      Class name
-     * @param string|Expr    $name       Method name
-     * @param Node\Arg[]     $args       Arguments
-     * @param array          $attributes Additional attributes
+     * @param Node\Name|Expr         $class      Class name
+     * @param string|Identifier|Expr $name       Method name
+     * @param Node\Arg[]             $args       Arguments
+     * @param array                  $attributes Additional attributes
      */
-    public function __construct($class, $name, array $args = array(), array $attributes = array()) {
+    public function __construct($class, $name, array $args = [], array $attributes = []) {
         parent::__construct($attributes);
         $this->class = $class;
-        $this->name = $name;
+        $this->name = \is_string($name) ? new Identifier($name) : $name;
         $this->args = $args;
     }
 
-    public function getSubNodeNames() {
-        return array('class', 'name', 'args');
+    public function getSubNodeNames() : array {
+        return ['class', 'name', 'args'];
+    }
+    
+    public function getType() : string {
+        return 'Expr_StaticCall';
     }
 }