File tree Expand file tree Collapse file tree 3 files changed +7
-7
lines changed
src/main/kotlin/com/autonomousapps Expand file tree Collapse file tree 3 files changed +7
-7
lines changed Original file line number Diff line number Diff line change @@ -4,7 +4,6 @@ package com.autonomousapps.internal
44
55import com.autonomousapps.internal.asm.ClassReader
66import com.autonomousapps.internal.utils.asSequenceOfClassFiles
7- import com.autonomousapps.internal.utils.filterToClassFiles
87import com.autonomousapps.internal.utils.getLogger
98import com.autonomousapps.model.internal.KtFile
109import com.autonomousapps.model.internal.PhysicalArtifact
@@ -78,9 +77,7 @@ internal class JarExploder(
7877 Mode .CLASSES -> {
7978 ktFiles = KtFile .fromDirectory(artifact.file)
8079
81- artifact.file.walkBottomUp()
82- .filter { it.isFile }
83- .filterToClassFiles()
80+ artifact.file.asSequenceOfClassFiles()
8481 .map { classFile ->
8582 ClassNameAndAnnotationsVisitor (logger).apply {
8683 val reader = classFile.inputStream().use { ClassReader (it.readBytes()) }
Original file line number Diff line number Diff line change @@ -56,6 +56,11 @@ internal fun Iterable<ZipEntry>.asSequenceOfClassFiles(): Sequence<ZipEntry> {
5656 }
5757}
5858
59+ internal fun File.asSequenceOfClassFiles (): Sequence <File > {
60+ check(isDirectory) { " Expected directory. Was '${absolutePath} '" }
61+ return walkBottomUp().filter { it.isFile }.filterToClassFiles()
62+ }
63+
5964// Can't use Iterable<File> because of signature clash with Iterable<ZipEntry> above.
6065internal fun Collection<File>.asSequenceOfClassFiles (): Sequence <File > {
6166 return asSequence().filterToClassFiles()
Original file line number Diff line number Diff line change @@ -221,9 +221,7 @@ internal class KotlinMagicFinder(
221221 return KotlinCapabilities .EMPTY
222222 }
223223
224- artifact.file.walkBottomUp()
225- .filter { it.isFile }
226- .filterToClassFiles()
224+ artifact.file.asSequenceOfClassFiles()
227225 .mapNotNull { classFile ->
228226 val kotlinMagic = readClass(
229227 classFile.inputStream().use { ClassReader (it.readBytes()) },
You can’t perform that action at this time.
0 commit comments