L'utilisation de la forme de tuple semble être utile lorsque l'on travaille par exemple avec des interfaces Iterable
. Cependant, le constructeur de type Map
prend deux arguments de type, et Iterable
n'en prend qu'un (un 2-tuple). En bref, je voudrais faire quelque chose comme: type Map[(+A, +B)] = Map[A, B]
, mais c'est un code Scala invalide. Je pourrais dire:Comment créer un constructeur Map en utilisant Map ([K, V]) au lieu de Map [K, V]?
type MapItem = (K,V)
type MyMap = Map[MapItem]
Le cas par exemple d'utilisation j'est actuellement que j'ai fonction définie comme suit:
def requestDecodeIterable[B, I[X] <: Iterable[X]](reqRx: Rx[HttpRequest])
(implicit stuff ...): Rx[I[B]] = ...
J'aimerais pouvoir l'appeler comme ceci:
Toutefois, cela ne fonctionne pas bien sûr, car CodebookNameCollection
prend deux paramètres de type, mais I
ne prend qu'un seul paramètre de type.
Pouvez-vous montrer une situation où cela serait utile? –
@ IonuţG.Stan - bien sûr, j'ai mis à jour ma question. – bbarker