J'essaie de trouver une méthode pour créer une fonction d'usine de manière générique, de sorte que je puisse lui passer une classe et recevoir en retour une fonction qui créera des instances de cette classe. Quelque chose de semblable :
function createClassFactory<T> (MyClass: {new(...):T}) {
return function classFactory(...) {
return new MyClass(...)
}
}
Afin de maintenir les informations de type, je voudrais classFactory
pour avoir la même signature que le MyClass
constructeur. Pour l'instant, je ne vois pas comment cela pourrait être possible.
Ce genre de chose est-il possible d'une autre manière ?