Documente os parâmetros de tipo genérico no JSDOC
EmJSDoc existe a possibilidade de documentar os tipos exatos de conteúdo do arraycomo isso:
/** @param {Array.<MyClass>} myClasses An array of MyClass objects. */
TestClass.protoype.someMethod = function( myClasses ){
myClasses[0].aMethodOnMyClass();
}
Isso faz com que o preenchimento de código em IDEs como o WebStorm realmente forneça as informações corretas do tipo após o[0].
. Isso funciona bem para o tipo Array, no entanto, eu tenho meus próprios tipos de coleção, onde gostaria de fazer uso desse recurso também. O problema é que não consigo encontrar a sintaxe correta (talvez porque ainda não exista). Eu adoraria poder declarar minha classe de alguma forma assim:
/**
* @typeparam {T} the type parameter
* @constructor {Test2.<T>}
* */
Test2 = function(){};
/**
* @returns {T} a value of type T, where T is the generic type parameter of Test2
*/
Test2.prototype.getGenericValue = function(){}
Esta sintaxe ou recurso não funciona com o meu IDE e não está listadoAqui, então eu estou querendo saber se existe uma sintaxe para este caso de uso, seja para WebStorm ou qualquer outra ferramenta de autoria JS.