perf: use String List and compare instead of any lambda

This commit is contained in:
Lucaskyy 2022-04-09 22:04:00 +02:00 committed by oSumAtrIX
parent a6c6b4979a
commit 5bd416b409
No known key found for this signature in database
GPG key ID: A9B3094ACDB604B4

View file

@ -43,14 +43,17 @@ class Patcher(
fun addFiles(vararg files: File, throwOnDuplicates: Boolean = false) {
for (file in files) {
val dexFile = MultiDexIO.readDexFile(true, files[0], NAMER, null, null)
val classes = mutableListOf<String>()
for (classDef in dexFile.classes) {
if (cache.classes.any { it.type == classDef.type }) {
// TODO: Use logger and warn about duplicate classes
if (classes.contains(classDef.type)) {
if (throwOnDuplicates)
throw Exception("Class ${classDef.type} has already been added to the patcher.")
continue
}
cache.classes.add(classDef)
classes.add(classDef.type)
}
classes.clear()
}
}
/**