#7 QuotientTreeMap: multivalue

Затворено
отворено пре 6 година од msieron · 1 коментара
msieron коментирира пре 6 година

MultiValue support is broken. Let's image, we put 4 values: List, List, ArrayList, ArrayList

Then we have no idea, what structure will be at the end. Possible options:

 - List
   - List/ArrayList
   - List/ArrayList
 - List
 - List
   - List/ArrayList
 - List
   - List/ArrayList

Anyway, every option is broken if we want to later use values sorted by inheritance.

In effect, if we want to map many values (we want in DynamicInvoker!) then we have to use explicitly QuotientTreeMap<Class, List<?>>. Additionaly, we can't use standard computeIfPresent, because get uses find, not findExact!

MultiValue support is broken. Let's image, we put 4 values: List, List, ArrayList, ArrayList Then we have no idea, what structure will be at the end. Possible options: ``` - List - List/ArrayList - List/ArrayList - List ``` ``` - List - List/ArrayList - List - List/ArrayList ``` Anyway, every option is broken if we want to later use values sorted by inheritance. In effect, if we want to map many values (we want in DynamicInvoker!) then we have to use explicitly `QuotientTreeMap<Class, List<?>>`. Additionaly, we can't use standard `computeIfPresent`, because `get` uses `find`, not `findExact`!
msieron затворено пре 6 година
msieron коментирира пре 6 година
Коаутор

QuotientMap abstraction is broken in every way, and unusable in DynamicInvoker.

QuotientMap abstraction is broken in every way, and unusable in DynamicInvoker.
ranides поменуо овај задатак у комит пре 4 година
ranides поменуо овај задатак у комит пре 4 година
Пријавите се да се прикључе у овом разговору.
Нема фазе
Нема одговорних
1 учесника
Учитавање...
Откажи
Сачувај
Још нема садржаја.