fix(android) detekt: compareComponentWise via zip+firstOrNull (single return)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-27 18:14:56 -04:00
parent 5f31fdc300
commit d20fab5459
@@ -46,16 +46,14 @@ fun isVersionNewer(server: String, installed: String): Boolean {
val n = maxOf(svr.size, ins.size)
val svrPadded = svr + List(n - svr.size) { 0 }
val insPadded = ins + List(n - ins.size) { 0 }
return compareComponentWise(svrPadded, insPadded, n)
return compareComponentWise(svrPadded, insPadded)
}
private fun parseVersion(v: String): List<Int> =
v.removePrefix("v").split('.').map { it.toIntOrNull() ?: 0 }
private fun compareComponentWise(svr: List<Int>, ins: List<Int>, n: Int): Boolean {
for (i in 0 until n) {
if (svr[i] > ins[i]) return true
if (svr[i] < ins[i]) return false
}
return false
}
private fun compareComponentWise(svr: List<Int>, ins: List<Int>): Boolean =
svr.zip(ins)
.firstOrNull { (a, b) -> a != b }
?.let { (a, b) -> a > b }
?: false