Avec .phpstorm.meta.php
, vous pouvez écraser le type de retour de vos méthodes de classe. Par exemple:Comment faire pour que le retour de la fonction soit un tableau d'instances d'une classe dynamique via le fichier .phpstorm.meta.php?
// .phpstorm.meta.php
namespace PHPSTORM_META
{
$STATIC_METHOD_TYPES = [
\Acme\Node::closest('') => [
"" == "@",
],
];
}
L'exemple ci-dessus permet de PhpStorm comprendre le retour de $node->closest(SomeNodeType::class)
est une instance de SomeNodeType
.
Cependant, ma question est de savoir comment faire comprendre à PhpStorm qu'une fonction renvoie un tableau d'instances d'un type donné.
Par exemple: $node->findAllOfType(SomeNodeType::class)
retournerait un tableau de SomeNodeType
instances (normalement on utiliserait SomeNodeType[]
si elle ne serait pas dynamique).
Tentatives d'utilisation "@[]"
ou "@Iterator"
au lieu de "@"
, dans l'exemple de code ci-dessus, échoué.
Dommage que ce ne soit pas supporté, mais merci de le noter! Continuera à suivre le problème et à mettre à jour ses modifications. – Jeremy