Updated from some -dev modules to alpha, beta or full releases
[yaffs-website] / vendor / psy / psysh / src / CodeCleaner / ValidClassNamePass.php
index f62e2a4a62e1ec75a11b2a4ba608ce07c486d138..5de75d5f9154853cffb5b033b0dc960b46e72f70 100644 (file)
@@ -117,7 +117,7 @@ class ValidClassNamePass extends NamespaceAwarePass
      */
     protected function validateClassStatement(Class_ $stmt)
     {
-        $this->ensureCanDefine($stmt);
+        $this->ensureCanDefine($stmt, self::CLASS_TYPE);
         if (isset($stmt->extends)) {
             $this->ensureClassExists($this->getFullyQualifiedName($stmt->extends), $stmt);
         }
@@ -131,7 +131,7 @@ class ValidClassNamePass extends NamespaceAwarePass
      */
     protected function validateInterfaceStatement(Interface_ $stmt)
     {
-        $this->ensureCanDefine($stmt);
+        $this->ensureCanDefine($stmt, self::INTERFACE_TYPE);
         $this->ensureInterfacesExist($stmt->extends, $stmt);
     }
 
@@ -142,7 +142,7 @@ class ValidClassNamePass extends NamespaceAwarePass
      */
     protected function validateTraitStatement(Trait_ $stmt)
     {
-        $this->ensureCanDefine($stmt);
+        $this->ensureCanDefine($stmt, self::TRAIT_TYPE);
     }
 
     /**
@@ -194,9 +194,10 @@ class ValidClassNamePass extends NamespaceAwarePass
      *
      * @throws FatalErrorException
      *
-     * @param Stmt $stmt
+     * @param Stmt   $stmt
+     * @param string $scopeType
      */
-    protected function ensureCanDefine(Stmt $stmt)
+    protected function ensureCanDefine(Stmt $stmt, $scopeType = self::CLASS_TYPE)
     {
         $name = $this->getFullyQualifiedName($stmt->name);
 
@@ -216,7 +217,7 @@ class ValidClassNamePass extends NamespaceAwarePass
 
         // Store creation for the rest of this code snippet so we can find local
         // issue too
-        $this->currentScope[strtolower($name)] = $this->getScopeType($stmt);
+        $this->currentScope[strtolower($name)] = $scopeType;
     }
 
     /**
@@ -304,6 +305,9 @@ class ValidClassNamePass extends NamespaceAwarePass
     /**
      * Get a symbol type key for storing in the scope name cache.
      *
+     * @deprecated No longer used. Scope type should be passed into ensureCanDefine directly.
+     * @codeCoverageIgnore
+     *
      * @param Stmt $stmt
      *
      * @return string