@param-out
是否可以使用forthis
或来操作 Psalm 中的幻像类型self
?例子:
/**
* @template T
*/
class Foo
{
/**
* @param T $t
*/
public function __construct($t)
{
$this->t = $t;
}
/**
* WRONG:
* @param-out Test<S> $this
*/
public function test()
{
// Also this doesn't work:
$this->t = new S();
}
}
一个用例可能是一个文件类,其幻像类型设置为Open
or Closed
,并调用$file->open();
更改T
为Open
.