@@ -256,59 +256,56 @@ public function testToFlatArray( array $objects ) {
256256 self ::assertEquals ( $ objects , $ indexedArray ->toFlatArray () );
257257 }
258258
259- public static function moveProvider () {
259+ public static function moveProvider (): iterable {
260260 $ c = self ::statementsProvider ();
261- $ argLists = [];
262-
263- $ argLists [] = [ $ c , $ c [0 ], 0 , $ c ];
264- $ argLists [] = [ $ c , $ c [0 ], 1 , [ $ c [1 ], $ c [0 ], $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ] ] ];
265- $ argLists [] = [ $ c , $ c [0 ], 2 , [ $ c [1 ], $ c [0 ], $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ] ] ];
266- $ argLists [] = [ $ c , $ c [0 ], 3 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [1 ], $ c [0 ], $ c [5 ] ] ];
267- $ argLists [] = [ $ c , $ c [0 ], 4 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [1 ], $ c [0 ], $ c [5 ] ] ];
268- $ argLists [] = [ $ c , $ c [0 ], 5 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [1 ], $ c [0 ], $ c [5 ] ] ];
269- $ argLists [] = [ $ c , $ c [0 ], 6 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ], $ c [1 ], $ c [0 ] ] ];
270-
271- $ argLists [] = [ $ c , $ c [1 ], 0 , [ $ c [1 ], $ c [0 ], $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ] ] ];
272- $ argLists [] = [ $ c , $ c [1 ], 1 , $ c ];
273- $ argLists [] = [ $ c , $ c [1 ], 2 , $ c ];
274- $ argLists [] = [ $ c , $ c [1 ], 3 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
275- $ argLists [] = [ $ c , $ c [1 ], 4 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
276- $ argLists [] = [ $ c , $ c [1 ], 5 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
277- $ argLists [] = [ $ c , $ c [1 ], 6 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ], $ c [0 ], $ c [1 ] ] ];
278-
279- $ argLists [] = [ $ c , $ c [2 ], 0 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
280- $ argLists [] = [ $ c , $ c [2 ], 1 , $ c ];
281- $ argLists [] = [ $ c , $ c [2 ], 2 , $ c ];
282- $ argLists [] = [ $ c , $ c [2 ], 3 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [2 ], $ c [4 ], $ c [5 ] ] ];
283- $ argLists [] = [ $ c , $ c [2 ], 4 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [4 ], $ c [2 ], $ c [5 ] ] ];
284- $ argLists [] = [ $ c , $ c [2 ], 5 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [4 ], $ c [2 ], $ c [5 ] ] ];
285- $ argLists [] = [ $ c , $ c [2 ], 6 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [3 ], $ c [4 ], $ c [2 ] ] ];
286-
287- $ argLists [] = [ $ c , $ c [3 ], 0 , [ $ c [3 ], $ c [2 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
288- $ argLists [] = [ $ c , $ c [3 ], 1 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [2 ], $ c [4 ], $ c [5 ] ] ];
289- $ argLists [] = [ $ c , $ c [3 ], 2 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [2 ], $ c [4 ], $ c [5 ] ] ];
290- $ argLists [] = [ $ c , $ c [3 ], 3 , $ c ];
291- $ argLists [] = [ $ c , $ c [3 ], 4 , [ $ c [0 ], $ c [1 ], $ c [2 ], $ c [4 ], $ c [3 ], $ c [5 ] ] ];
292- $ argLists [] = [ $ c , $ c [3 ], 5 , [ $ c [0 ], $ c [1 ], $ c [2 ], $ c [4 ], $ c [3 ], $ c [5 ] ] ];
293- $ argLists [] = [ $ c , $ c [3 ], 6 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [2 ], $ c [4 ], $ c [3 ] ] ];
294-
295- $ argLists [] = [ $ c , $ c [4 ], 0 , [ $ c [4 ], $ c [2 ], $ c [3 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
296- $ argLists [] = [ $ c , $ c [4 ], 1 , [ $ c [0 ], $ c [1 ], $ c [4 ], $ c [2 ], $ c [3 ], $ c [5 ] ] ];
297- $ argLists [] = [ $ c , $ c [4 ], 2 , [ $ c [0 ], $ c [1 ], $ c [4 ], $ c [2 ], $ c [3 ], $ c [5 ] ] ];
298- $ argLists [] = [ $ c , $ c [4 ], 3 , [ $ c [0 ], $ c [1 ], $ c [2 ], $ c [4 ], $ c [3 ], $ c [5 ] ] ];
299- $ argLists [] = [ $ c , $ c [4 ], 4 , $ c ];
300- $ argLists [] = [ $ c , $ c [4 ], 5 , $ c ];
301- $ argLists [] = [ $ c , $ c [4 ], 6 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [2 ], $ c [3 ], $ c [4 ] ] ];
302-
303- $ argLists [] = [ $ c , $ c [5 ], 0 , [ $ c [5 ], $ c [0 ], $ c [1 ], $ c [2 ], $ c [3 ], $ c [4 ] ] ];
304- $ argLists [] = [ $ c , $ c [5 ], 1 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [2 ], $ c [3 ], $ c [4 ] ] ];
305- $ argLists [] = [ $ c , $ c [5 ], 2 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [2 ], $ c [3 ], $ c [4 ] ] ];
306- $ argLists [] = [ $ c , $ c [5 ], 3 , $ c ];
307- $ argLists [] = [ $ c , $ c [5 ], 4 , $ c ];
308- $ argLists [] = [ $ c , $ c [5 ], 5 , $ c ];
309- $ argLists [] = [ $ c , $ c [5 ], 6 , $ c ];
310261
311- return $ argLists ;
262+ yield [ $ c , $ c [0 ], 0 , $ c ];
263+ yield [ $ c , $ c [0 ], 1 , [ $ c [1 ], $ c [0 ], $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ] ] ];
264+ yield [ $ c , $ c [0 ], 2 , [ $ c [1 ], $ c [0 ], $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ] ] ];
265+ yield [ $ c , $ c [0 ], 3 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [1 ], $ c [0 ], $ c [5 ] ] ];
266+ yield [ $ c , $ c [0 ], 4 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [1 ], $ c [0 ], $ c [5 ] ] ];
267+ yield [ $ c , $ c [0 ], 5 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [1 ], $ c [0 ], $ c [5 ] ] ];
268+ yield [ $ c , $ c [0 ], 6 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ], $ c [1 ], $ c [0 ] ] ];
269+
270+ yield [ $ c , $ c [1 ], 0 , [ $ c [1 ], $ c [0 ], $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ] ] ];
271+ yield [ $ c , $ c [1 ], 1 , $ c ];
272+ yield [ $ c , $ c [1 ], 2 , $ c ];
273+ yield [ $ c , $ c [1 ], 3 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
274+ yield [ $ c , $ c [1 ], 4 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
275+ yield [ $ c , $ c [1 ], 5 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
276+ yield [ $ c , $ c [1 ], 6 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ], $ c [0 ], $ c [1 ] ] ];
277+
278+ yield [ $ c , $ c [2 ], 0 , [ $ c [2 ], $ c [3 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
279+ yield [ $ c , $ c [2 ], 1 , $ c ];
280+ yield [ $ c , $ c [2 ], 2 , $ c ];
281+ yield [ $ c , $ c [2 ], 3 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [2 ], $ c [4 ], $ c [5 ] ] ];
282+ yield [ $ c , $ c [2 ], 4 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [4 ], $ c [2 ], $ c [5 ] ] ];
283+ yield [ $ c , $ c [2 ], 5 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [4 ], $ c [2 ], $ c [5 ] ] ];
284+ yield [ $ c , $ c [2 ], 6 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [3 ], $ c [4 ], $ c [2 ] ] ];
285+
286+ yield [ $ c , $ c [3 ], 0 , [ $ c [3 ], $ c [2 ], $ c [4 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
287+ yield [ $ c , $ c [3 ], 1 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [2 ], $ c [4 ], $ c [5 ] ] ];
288+ yield [ $ c , $ c [3 ], 2 , [ $ c [0 ], $ c [1 ], $ c [3 ], $ c [2 ], $ c [4 ], $ c [5 ] ] ];
289+ yield [ $ c , $ c [3 ], 3 , $ c ];
290+ yield [ $ c , $ c [3 ], 4 , [ $ c [0 ], $ c [1 ], $ c [2 ], $ c [4 ], $ c [3 ], $ c [5 ] ] ];
291+ yield [ $ c , $ c [3 ], 5 , [ $ c [0 ], $ c [1 ], $ c [2 ], $ c [4 ], $ c [3 ], $ c [5 ] ] ];
292+ yield [ $ c , $ c [3 ], 6 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [2 ], $ c [4 ], $ c [3 ] ] ];
293+
294+ yield [ $ c , $ c [4 ], 0 , [ $ c [4 ], $ c [2 ], $ c [3 ], $ c [0 ], $ c [1 ], $ c [5 ] ] ];
295+ yield [ $ c , $ c [4 ], 1 , [ $ c [0 ], $ c [1 ], $ c [4 ], $ c [2 ], $ c [3 ], $ c [5 ] ] ];
296+ yield [ $ c , $ c [4 ], 2 , [ $ c [0 ], $ c [1 ], $ c [4 ], $ c [2 ], $ c [3 ], $ c [5 ] ] ];
297+ yield [ $ c , $ c [4 ], 3 , [ $ c [0 ], $ c [1 ], $ c [2 ], $ c [4 ], $ c [3 ], $ c [5 ] ] ];
298+ yield [ $ c , $ c [4 ], 4 , $ c ];
299+ yield [ $ c , $ c [4 ], 5 , $ c ];
300+ yield [ $ c , $ c [4 ], 6 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [2 ], $ c [3 ], $ c [4 ] ] ];
301+
302+ yield [ $ c , $ c [5 ], 0 , [ $ c [5 ], $ c [0 ], $ c [1 ], $ c [2 ], $ c [3 ], $ c [4 ] ] ];
303+ yield [ $ c , $ c [5 ], 1 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [2 ], $ c [3 ], $ c [4 ] ] ];
304+ yield [ $ c , $ c [5 ], 2 , [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [2 ], $ c [3 ], $ c [4 ] ] ];
305+ yield [ $ c , $ c [5 ], 3 , $ c ];
306+ yield [ $ c , $ c [5 ], 4 , $ c ];
307+ yield [ $ c , $ c [5 ], 5 , $ c ];
308+ yield [ $ c , $ c [5 ], 6 , $ c ];
312309 }
313310
314311 /**
@@ -358,35 +355,31 @@ public function testMoveThrowingOutOfBoundsExceptionOnInvalidIndex() {
358355 $ indexedArray ->moveObjectToIndex ( $ statements [0 ], 9999 );
359356 }
360357
361- public static function addProvider () {
358+ public static function addProvider (): iterable {
362359 $ c = self ::statementsProvider ();
363360
364- $ argLists = [];
365-
366- $ argLists [] = [ [], $ c [0 ], null , [ $ c [0 ] ] ];
367- $ argLists [] = [ [], $ c [0 ], 1 , [ $ c [0 ] ] ];
368- $ argLists [] = [ [ $ c [0 ] ], $ c [2 ], 0 , [ $ c [2 ], $ c [0 ] ] ];
369- $ argLists [] = [ [ $ c [2 ], $ c [1 ] ], $ c [0 ], 0 , [ $ c [0 ], $ c [1 ], $ c [2 ] ] ];
370- $ argLists [] = [
361+ yield [ [], $ c [0 ], null , [ $ c [0 ] ] ];
362+ yield [ [], $ c [0 ], 1 , [ $ c [0 ] ] ];
363+ yield [ [ $ c [0 ] ], $ c [2 ], 0 , [ $ c [2 ], $ c [0 ] ] ];
364+ yield [ [ $ c [2 ], $ c [1 ] ], $ c [0 ], 0 , [ $ c [0 ], $ c [1 ], $ c [2 ] ] ];
365+ yield [
371366 [ $ c [0 ], $ c [1 ], $ c [3 ] ],
372367 $ c [5 ],
373368 1 ,
374369 [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [3 ] ],
375370 ];
376- $ argLists [] = [
371+ yield [
377372 [ $ c [0 ], $ c [1 ], $ c [5 ], $ c [3 ] ],
378373 $ c [2 ],
379374 2 ,
380375 [ $ c [0 ], $ c [1 ], $ c [2 ], $ c [3 ], $ c [5 ] ],
381376 ];
382- $ argLists [] = [
377+ yield [
383378 [ $ c [0 ], $ c [1 ], $ c [2 ], $ c [3 ], $ c [5 ] ],
384379 $ c [4 ],
385380 null ,
386381 [ $ c [0 ], $ c [1 ], $ c [2 ], $ c [3 ], $ c [4 ], $ c [5 ] ],
387382 ];
388-
389- return $ argLists ;
390383 }
391384
392385 /**
0 commit comments