AP
Size: a a a
AP
AP
AP
operator fun Map<MyEnum, MyValue>.getValue(myEnum) = get(myEnum)!!AP
RB
RB
.map { list ->
list.filter { client ->
val selected = filters.filter { it.isActive }.map { it.id }
client.priorityFilters.any { selected.contains(it) } || selected.isEmpty()
}
}AL
.map { list ->
list.filter { client ->
val selected = filters.filter { it.isActive }.map { it.id }
client.priorityFilters.any { selected.contains(it) } || selected.isEmpty()
}
}filters.filter { it.isActive }.map { it.id } наверное можно вынести куда-то вверх, чтобы не пересчитывать.any { selected.contains(it) } условно может быть долгим, если что-то из этого сколько-либо большое (client.priorityFilters или selected), но эту проблему можно убить кучей способовRB
RB
AL
iterable.any { it in someList } это действительно может быть что-то вроде квадрата.RB
RB
val selected = filters.filter { it.isActive }.mapTo(HashSet()) { it.id }
val sum = selected.size + client.priorityFilters.size
selected.addAll(client.priorityFilters)
selected.size < sum || selected.isEmpty() AH
AH
AH
RI
suspend fun main() {}AH
AH
RI
scope.launch {
val a = suspendCall1()
val b = suspendCall2(a)
future.complete(b)
}AH