Skip to content

Commit 6bb96a1

Browse files
committed
refactor
1 parent c643250 commit 6bb96a1

File tree

4 files changed

+13
-17
lines changed

4 files changed

+13
-17
lines changed

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

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
*/
44
package dotty.tools.dotc.classpath
55

6+
import dotty.tools.dotc.classpath.FileUtils.isTasty
67
import dotty.tools.io.AbstractFile
78
import dotty.tools.io.ClassRepresentation
89

@@ -48,16 +49,20 @@ sealed trait BinaryFileEntry extends ClassRepresentation {
4849
final def source: Option[AbstractFile] = None
4950
}
5051

52+
object BinaryFileEntry {
53+
def apply(file: AbstractFile): BinaryFileEntry =
54+
if file.isTasty then
55+
if file.resolveSiblingWithExtension("class") != null then TastyFileEntry(file)
56+
else StandaloneTastyFileEntry(file)
57+
else
58+
ClassFileEntry(file)
59+
}
60+
5161
/** A classfile or .sig that does not have an associated TASTy file */
5262
private[dotty] final case class ClassFileEntry(file: AbstractFile) extends BinaryFileEntry {
5363
def binary: Option[AbstractFile] = Some(file)
5464
}
5565

56-
// object TastyFileEntry:
57-
// def apply(file: AbstractFile, hasClassfile: Boolean): BinaryFileEntry =
58-
// if hasClassfile then TastyFileEntry(file)
59-
// else StandaloneTastyFileEntry(file)
60-
6166
/** A TASTy file that has an associated TASTy */
6267
private[dotty] final case class TastyFileEntry(file: AbstractFile) extends BinaryFileEntry {
6368
def binary: Option[AbstractFile] = Some(file)

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

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -295,10 +295,7 @@ case class DirectoryClassPath(dir: JFile) extends JFileDirectoryLookup[BinaryFil
295295
else None
296296
}
297297

298-
protected def createFileEntry(file: AbstractFile): BinaryFileEntry =
299-
if !file.isTasty then ClassFileEntry(file)
300-
else if file.resolveSiblingWithExtension("class") != null then TastyFileEntry(file)
301-
else StandaloneTastyFileEntry(file)
298+
protected def createFileEntry(file: AbstractFile): BinaryFileEntry = BinaryFileEntry(file)
302299

303300
protected def isMatchingFile(f: JFile): Boolean =
304301
f.isTasty || (f.isClass && f.classToTasty.isEmpty)

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

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,10 +61,7 @@ case class VirtualDirectoryClassPath(dir: VirtualDirectory) extends ClassPath wi
6161

6262
private[dotty] def classes(inPackage: PackageName): Seq[BinaryFileEntry] = files(inPackage)
6363

64-
protected def createFileEntry(file: AbstractFile): BinaryFileEntry =
65-
if !file.isTasty then ClassFileEntry(file)
66-
else if file.resolveSiblingWithExtension("class") != null then TastyFileEntry(file)
67-
else StandaloneTastyFileEntry(file)
64+
protected def createFileEntry(file: AbstractFile): BinaryFileEntry = BinaryFileEntry(file)
6865

6966
protected def isMatchingFile(f: AbstractFile): Boolean =
7067
f.isTasty || (f.isClass && f.classToTasty.isEmpty)

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

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,7 @@ object ZipAndJarClassPathFactory extends ZipAndJarFileLookupFactory {
5656

5757
override private[dotty] def classes(inPackage: PackageName): Seq[BinaryFileEntry] = files(inPackage)
5858

59-
override protected def createFileEntry(file: FileZipArchive#Entry): BinaryFileEntry =
60-
if !file.isTasty then ClassFileEntry(file)
61-
else if file.resolveSiblingWithExtension("class") != null then TastyFileEntry(file)
62-
else StandaloneTastyFileEntry(file)
59+
override protected def createFileEntry(file: FileZipArchive#Entry): BinaryFileEntry = BinaryFileEntry(file)
6360

6461
override protected def isRequiredFileType(file: AbstractFile): Boolean =
6562
file.isTasty || (file.isClass && file.classToTasty.isEmpty)

0 commit comments

Comments
 (0)