@@ -21,52 +21,52 @@ function insertViaArraySplice(array $arr): void
2121{
2222 $ brr = $ arr ;
2323 $ extract = array_splice ($ brr , 0 , 0 , 1 );
24- assertType ('non-empty-array<int, int> ' , $ brr );
24+ assertType ('non-empty-list< int> ' , $ brr );
2525 assertType ('array{} ' , $ extract );
2626
2727 $ brr = $ arr ;
2828 $ extract = array_splice ($ brr , 0 , 0 , [1 ]);
29- assertType ('non-empty-array<int, int> ' , $ brr );
29+ assertType ('non-empty-list< int> ' , $ brr );
3030 assertType ('array{} ' , $ extract );
3131
3232 $ brr = $ arr ;
3333 $ extract = array_splice ($ brr , 0 , 0 , '' );
34- assertType ('non-empty-array<int, \'\'|int> ' , $ brr );
34+ assertType ('non-empty-list< \'\'|int> ' , $ brr );
3535 assertType ('array{} ' , $ extract );
3636
3737 $ brr = $ arr ;
3838 $ extract = array_splice ($ brr , 0 , 0 , ['' ]);
39- assertType ('non-empty-array<int, \'\'|int> ' , $ brr );
39+ assertType ('non-empty-list< \'\'|int> ' , $ brr );
4040 assertType ('array{} ' , $ extract );
4141
4242 $ brr = $ arr ;
4343 $ extract = array_splice ($ brr , 0 , 0 , null );
44- assertType ('array<int, int> ' , $ brr );
44+ assertType ('list< int> ' , $ brr );
4545 assertType ('array{} ' , $ extract );
4646
4747 $ brr = $ arr ;
4848 $ extract = array_splice ($ brr , 0 , 0 , [null ]);
49- assertType ('non-empty-array<int, int|null> ' , $ brr );
49+ assertType ('non-empty-list< int|null> ' , $ brr );
5050 assertType ('array{} ' , $ extract );
5151
5252 $ brr = $ arr ;
5353 $ extract = array_splice ($ brr , 0 , 0 , new Foo ());
54- assertType ('non-empty-array<int, bool|int|string> ' , $ brr );
54+ assertType ('non-empty-list< bool|int|string> ' , $ brr );
5555 assertType ('array{} ' , $ extract );
5656
5757 $ brr = $ arr ;
5858 $ extract = array_splice ($ brr , 0 , 0 , [new \stdClass ()]);
59- assertType ('non-empty-array<int, int|stdClass> ' , $ brr );
59+ assertType ('non-empty-list< int|stdClass> ' , $ brr );
6060 assertType ('array{} ' , $ extract );
6161
6262 $ brr = $ arr ;
6363 $ extract = array_splice ($ brr , 0 , 0 , false );
64- assertType ('non-empty-array<int, int|false> ' , $ brr );
64+ assertType ('non-empty-list< int|false> ' , $ brr );
6565 assertType ('array{} ' , $ extract );
6666
6767 $ brr = $ arr ;
6868 $ extract = array_splice ($ brr , 0 , 0 , [false ]);
69- assertType ('non-empty-array<int, int|false> ' , $ brr );
69+ assertType ('non-empty-list< int|false> ' , $ brr );
7070 assertType ('array{} ' , $ extract );
7171
7272 $ brr = $ arr ;
@@ -323,25 +323,25 @@ function offsets(array $arr): void
323323{
324324 if (array_key_exists (1 , $ arr )) {
325325 $ extract = array_splice ($ arr , 0 , 1 , 'hello ' );
326- assertType ('non-empty-array ' , $ arr );
326+ assertType ('non-empty-array<(int<0, max>|string), mixed> ' , $ arr );
327327 assertType ('array ' , $ extract );
328328 }
329329
330330 if (array_key_exists (1 , $ arr )) {
331331 $ extract = array_splice ($ arr , 0 , 0 , 'hello ' );
332- assertType ('non-empty-array&hasOffset(1) ' , $ arr );
332+ assertType ('non-empty-array<(int<0, max>|string), mixed> &hasOffset(1) ' , $ arr );
333333 assertType ('array{} ' , $ extract );
334334 }
335335
336336 if (array_key_exists (1 , $ arr ) && $ arr [1 ] === 'foo ' ) {
337337 $ extract = array_splice ($ arr , 0 , 1 , 'hello ' );
338- assertType ('non-empty-array ' , $ arr );
338+ assertType ('non-empty-array<(int<0, max>|string), mixed> ' , $ arr );
339339 assertType ('array ' , $ extract );
340340 }
341341
342342 if (array_key_exists (1 , $ arr ) && $ arr [1 ] === 'foo ' ) {
343343 $ extract = array_splice ($ arr , 0 , 0 , 'hello ' );
344- assertType ('non-empty-array&hasOffsetValue(1, \'foo \') ' , $ arr );
344+ assertType ('non-empty-array<(int<0, max>|string), mixed> &hasOffsetValue(1, \'foo \') ' , $ arr );
345345 assertType ('array{} ' , $ extract );
346346 }
347347}
@@ -384,3 +384,12 @@ function lists(array $arr): void
384384 assertType ('list<string> ' , $ arr );
385385 assertType ('list<string> ' , $ extract );
386386}
387+
388+ function mort (array $ arr ): void
389+ {
390+ /** @var array<string, string> $arr */
391+ $ arr ;
392+ $ extract = array_splice ($ arr , 0 , 1 , [17 => 'foo ' , 18 => 'bar ' ]);
393+ assertType ('non-empty-array<0|1|string, string> ' , $ arr );
394+ assertType ('array<string, string> ' , $ extract );
395+ }
0 commit comments