Cómo documentar los métodos magic (_call y _callStatic) para los IDE

Después de muchos años felices programando en notepad ++ y sublime, me recomendaron que probara un IDE de PHP. Estoy probando phpStorm y me parece bien. La finalización del código y la documentación es una gran característica, pero no funciona para mí cuando se usan métodos mágicos.¿Existe alguna solución para que phpStorm entienda lo que ocurre con los métodos mágicos?

Nuestra situación es algo como esto:

abstract class a {
    public static function __callStatic($method,$args)
    {
        if(strpos($method,"get_by_") === 0)
        {
            //do stuff
        } elseif(strpos($method,"get_first_by_") === 0) {
            //do stuff
        } elseif($method == "get_all") {
            //do stuff
        }
    }
}

class b extends a {
    // some more stuff
}

b::get_by_user_id(27);
b::get_first_by_id(156);
b::get_all();

El método magic callStatic nos permite obtener una colección de objetos a través de 1 o más argumentos que conforman la llamada a la función.

Veo que hay una declaración @method para usar en estos casos, pero phpStorm solo retoma la primera de estas declaraciones. Además, solo puedo establecer el tipo de retorno en mixto donde prefiero poder establecerlo como la clase a la que se llamó (b en mi ejemplo).

Cualquier idea o sugerencia sería muy agradecida, gracias.

Respuestas a la pregunta(2)

Su respuesta a la pregunta