PHPStorm IDEを使用していますが、コード インスペクションを実行すると問題が発生します。
オブジェクトのコレクションを返すメソッドがあります。Collection
自体は、独自のメソッドを持ち、Traversableインターフェースを実装するオブジェクトです。
class Repository
{
public function findByCustomer(Customer $user)
{
// ...
return new Collection($orders);
}
}
findByUser()
を返すように文書化するCollection
と、コード インスペクションはこのオブジェクトのメソッドを理解しますが、コレクションに含まれるオブジェクトを理解できません。
/**
* @return Collection
*/
public function findByCustomer() { ... }
findByUser()
オブジェクトのコレクションを返すように文書化するOrder
と、コード インスペクションはコレクションの内容を理解するようになりましたが、Collection
それ自体のメソッドは理解できません。
/**
* @return Order[]
*/
public function findByCustomer() { ... }
Javaの構文のように、両方を同時に指定する方法はありますか?
/**
* @return Collection<Order>
*/
public function findByCustomer() { ... }