summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2010-02-04 13:33:06 +0000
committerPaul Phillips <paulp@improving.org>2010-02-04 13:33:06 +0000
commita1a6ab90ac5fe7d5db2f6fba788ce14c1613d9c6 (patch)
treea70c578ce72906368a8e733ac8aff914ae8cbf42 /src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
parent9ee1f2f3b8ed91897bb298592f8a600ff5e4622d (diff)
downloadscala-a1a6ab90ac5fe7d5db2f6fba788ce14c1613d9c6.tar.gz
scala-a1a6ab90ac5fe7d5db2f6fba788ce14c1613d9c6.tar.bz2
scala-a1a6ab90ac5fe7d5db2f6fba788ce14c1613d9c6.zip
The remainder of isolating MSIL from the rest o...
The remainder of isolating MSIL from the rest of the classpath code. To accomplish this I made ClassRep an inner class of ClassPath (which given the broad definition of ClassPath already in place, it conceptually is already) and as a bonus this allowed dropping its type parameter. Review by rytz.
Diffstat (limited to 'src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala')
-rw-r--r--src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
index 34b7f9f8af..538a606243 100644
--- a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
+++ b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
@@ -14,7 +14,6 @@ import java.lang.Integer.toHexString
import scala.collection.immutable.{Map, ListMap}
import scala.collection.mutable.{ListBuffer, ArrayBuffer}
import scala.tools.nsc.io.AbstractFile
-import scala.tools.nsc.util.ClassRep
import scala.annotation.switch
/** This abstract class implements a class file parser.
@@ -953,9 +952,8 @@ abstract class ClassfileParser {
for (entry <- innerClasses.valuesIterator) {
// create a new class member for immediate inner classes
if (entry.outerName == externalName) {
- val file = global.classPath.findClass(entry.externalName.toString) match {
- case Some(ClassRep(Some(binary: AbstractFile), _)) => binary
- case _ => throw new AssertionError(entry.externalName)
+ val file = global.classPath.findAbstractFile(entry.externalName.toString) getOrElse {
+ throw new AssertionError(entry.externalName)
}
enterClassAndModule(entry, new global.loaders.ClassfileLoader(file), entry.jflags)
}