Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / vendor / nikic / php-parser / lib / PhpParser / Node / Param.php
index b35ee4ef094fa6824e4459fc55bc7ed9b2445d7b..0ea52790b17601899bf92d80e57c218483ce086f 100644 (file)
@@ -1,4 +1,4 @@
-<?php
+<?php declare(strict_types=1);
 
 namespace PhpParser\Node;
 
@@ -6,37 +6,44 @@ use PhpParser\NodeAbstract;
 
 class Param extends NodeAbstract
 {
-    /** @var null|string|Name|NullableType Typehint */
+    /** @var null|Identifier|Name|NullableType Typehint */
     public $type;
     /** @var bool Whether parameter is passed by reference */
     public $byRef;
     /** @var bool Whether this is a variadic argument */
     public $variadic;
-    /** @var string Name */
-    public $name;
+    /** @var Expr\Variable Parameter variable */
+    public $var;
     /** @var null|Expr Default value */
     public $default;
 
     /**
      * Constructs a parameter node.
      *
-     * @param string                        $name       Name
+     * @param Expr\Variable                 $var        Parameter variable
      * @param null|Expr                     $default    Default value
      * @param null|string|Name|NullableType $type       Typehint
      * @param bool                          $byRef      Whether is passed by reference
      * @param bool                          $variadic   Whether this is a variadic argument
      * @param array                         $attributes Additional attributes
      */
-    public function __construct($name, Expr $default = null, $type = null, $byRef = false, $variadic = false, array $attributes = array()) {
+    public function __construct(
+        Expr\Variable $var, Expr $default = null, $type = null,
+        bool $byRef = false, bool $variadic = false, array $attributes = []
+    ) {
         parent::__construct($attributes);
-        $this->type = $type;
+        $this->type = \is_string($type) ? new Identifier($type) : $type;
         $this->byRef = $byRef;
         $this->variadic = $variadic;
-        $this->name = $name;
+        $this->var = $var;
         $this->default = $default;
     }
 
-    public function getSubNodeNames() {
-        return array('type', 'byRef', 'variadic', 'name', 'default');
+    public function getSubNodeNames() : array {
+        return ['type', 'byRef', 'variadic', 'var', 'default'];
+    }
+    
+    public function getType() : string {
+        return 'Param';
     }
 }