createCachedSelector9<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, K, T> function
SelectorClass<S, K, T>
createCachedSelector9<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, K, T>(
- Selector<
S, R1> selector1, - Selector<
S, R2> selector2, - Selector<
S, R3> selector3, - Selector<
S, R4> selector4, - Selector<
S, R5> selector5, - Selector<
S, R6> selector6, - Selector<
S, R7> selector7, - Selector<
S, R8> selector8, - Selector<
S, R9> selector9, - T combiner(
- R1,
- R2,
- R3,
- R4,
- R5,
- R6,
- R7,
- R8,
- R9,
- Selector<
S, K> keySelector, { - Map<
K, Selector< ? cacheObject,S, T> >
Implementation
SelectorClass<S, K, T> createCachedSelector9<S, R1, R2, R3, R4, R5, R6, R7, R8, R9, K, T>(
Selector<S, R1> selector1,
Selector<S, R2> selector2,
Selector<S, R3> selector3,
Selector<S, R4> selector4,
Selector<S, R5> selector5,
Selector<S, R6> selector6,
Selector<S, R7> selector7,
Selector<S, R8> selector8,
Selector<S, R9> selector9,
T Function(R1, R2, R3, R4, R5, R6, R7, R8, R9) combiner,
Selector<S, K> keySelector, {
Map<K, Selector<S, T>>? cacheObject,
}) {
final cache = cacheObject ?? FlatMapCache<K, Selector<S, T>>();
return SelectorClass(
cache,
(S state) => cache.putIfAbsent(
keySelector(state),
() => createSelector9(
selector1,
selector2,
selector3,
selector4,
selector5,
selector6,
selector7,
selector8,
selector9,
combiner,
)));
}