PPFrame: Use explicit varargs in method parameters
authorMáté Szabó <mszabo@wikia-inc.com>
Sat, 5 Oct 2019 15:52:29 +0000 (17:52 +0200)
committerReedy <reedy@wikimedia.org>
Fri, 18 Oct 2019 20:35:16 +0000 (21:35 +0100)
With the removal of HHVM support, we can now use explicit varargs
in function arguments. This patch updates the PPFrame interface to
do so, and also removes PhanCommentParamWithoutRealParam check suppressions,
which are now redundant.

It seems that classes implementing this interface were already using varargs.

Bug: T231710
Change-Id: Ib1d69575835df80dca4e43b0028ad9368f62bb58

includes/parser/PPFrame.php

index b50fcfc..51fc0b6 100644 (file)
@@ -71,41 +71,37 @@ interface PPFrame {
         * Implode with flags for expand()
         * @param string $sep
         * @param int $flags
-        * @param string|PPNode $args,...
-        * @suppress PhanCommentParamWithoutRealParam HHVM bug T228695#5450847
+        * @param string|PPNode ...$params
         * @return string
         */
-       public function implodeWithFlags( $sep, $flags /*, ... */ );
+       public function implodeWithFlags( $sep, $flags, ...$params );
 
        /**
         * Implode with no flags specified
         * @param string $sep
-        * @param string|PPNode $args,...
-        * @suppress PhanCommentParamWithoutRealParam HHVM bug T228695#5450847
+        * @param string|PPNode ...$params
         * @return string
         */
-       public function implode( $sep /*, ... */ );
+       public function implode( $sep, ...$params );
 
        /**
         * Makes an object that, when expand()ed, will be the same as one obtained
         * with implode()
         * @param string $sep
-        * @param string|PPNode ...$args
-        * @suppress PhanCommentParamWithoutRealParam HHVM bug T228695#5450847
+        * @param string|PPNode ...$params
         * @return PPNode
         */
-       public function virtualImplode( $sep /* ...$args */ );
+       public function virtualImplode( $sep, ...$params );
 
        /**
         * Virtual implode with brackets
         * @param string $start
         * @param string $sep
         * @param string $end
-        * @param string|PPNode ...$args
-        * @suppress PhanCommentParamWithoutRealParam HHVM bug T228695#5450847
+        * @param string|PPNode ...$params
         * @return PPNode
         */
-       public function virtualBracketedImplode( $start, $sep, $end /* ...$args */ );
+       public function virtualBracketedImplode( $start, $sep, $end, ...$params );
 
        /**
         * Returns true if there are no arguments in this frame