Skip to content

Commit 4ffae83

Browse files
authored
Fix RedisCluster::multi() return type (#4283)
1 parent f4e4354 commit 4ffae83

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed

resources/functionMap.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8896,7 +8896,7 @@
88968896
'RedisCluster::mget' => ['array', 'array'=>'array'],
88978897
'RedisCluster::mset' => ['bool', 'array'=>'array'],
88988898
'RedisCluster::msetnx' => ['int', 'array'=>'array'],
8899-
'RedisCluster::multi' => ['Redis', 'mode='=>'int'],
8899+
'RedisCluster::multi' => ['__benevolent<RedisCluster|bool>', 'mode='=>'int'],
89008900
'RedisCluster::object' => ['string', 'string='=>'string', 'key='=>'string'],
89018901
'RedisCluster::persist' => ['bool', 'key'=>'string'],
89028902
'RedisCluster::pExpire' => ['bool', 'key'=>'string', 'ttl'=>'int'],
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?php declare(strict_types = 1);
2+
3+
namespace Bug13392;
4+
5+
use RedisCluster;
6+
7+
use function PHPStan\Testing\assertType;
8+
9+
interface Client
10+
{
11+
public function get(): RedisCluster;
12+
}
13+
14+
function func(Client $client): void
15+
{
16+
$redisCluster = $client->get();
17+
assertType('RedisCluster',$redisCluster);
18+
19+
$transaction = $redisCluster->multi();
20+
assertType('(bool|RedisCluster)',$transaction);
21+
}

0 commit comments

Comments
 (0)