Skip to content

Commit 52b3cdf

Browse files
committed
Performance
1 parent ad5f947 commit 52b3cdf

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

compiler/src/dotty/tools/dotc/classpath/VirtualDirectoryClassPath.scala

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,11 @@ case class VirtualDirectoryClassPath(dir: VirtualDirectory) extends ClassPath wi
4141
override def findClass(className: String): Option[ClassRepresentation] = findClassFile(className) map ClassFileEntryImpl.apply
4242

4343
def findClassFile(className: String): Option[AbstractFile] = {
44-
val pathSeq = FileUtils.dirPath(className).split(java.io.File.separator).toVector
45-
val parentSeq = pathSeq.init
46-
val tastyPath = parentSeq :+ (pathSeq.last + ".tasty")
47-
val classPath = parentSeq :+ (pathSeq.last + ".class")
48-
Option(lookupPath(dir)(tastyPath, directory = false))
49-
.orElse(Option(lookupPath(dir)(classPath, directory = false)))
44+
val pathSeq = FileUtils.dirPath(className).split(java.io.File.separator)
45+
val parentDir = lookupPath(dir)(pathSeq.init.toSeq, directory = true)
46+
val name = pathSeq.last
47+
Option(lookupPath(parentDir)(name + ".tasty" :: Nil, directory = false))
48+
.orElse(Option(lookupPath(parentDir)(name + ".class" :: Nil, directory = false)))
5049
}
5150

5251
private[dotty] def classes(inPackage: PackageName): Seq[ClassFileEntry] = files(inPackage)

0 commit comments

Comments
 (0)