Revert "Work around scalac issue causing boxing." (ClassNotFoundException)

This reverts commit 6c090313da.
This commit is contained in:
Mark Harrah 2012-04-17 05:13:27 -04:00
parent e7f70c2a2c
commit 7dac90fffe
1 changed files with 10 additions and 12 deletions

View File

@ -5,7 +5,6 @@ package sbt
package classfile package classfile
import java.io.{DataInputStream, File, InputStream} import java.io.{DataInputStream, File, InputStream}
import scala.annotation.switch
// Translation of jdepend.framework.ClassFileParser by Mike Clark, Clarkware Consulting, Inc. // Translation of jdepend.framework.ClassFileParser by Mike Clark, Clarkware Consulting, Inc.
// BSD Licensed // BSD Licensed
@ -133,18 +132,17 @@ private[sbt] object Parser
pool pool
} }
private def getConstant(in: DataInputStream): Constant = private def getConstant(in: DataInputStream) =
{ {
val tag = in.readByte() val tag = in.readByte()
tag match
// No switch for byte scrutinees! Stupid compiler. {
((tag: Int): @switch) match { case ConstantClass | ConstantString => new Constant(tag, in.readUnsignedShort())
case ConstantClass | ConstantString => new Constant(tag, in.readUnsignedShort()) case ConstantField | ConstantMethod | ConstantInterfaceMethod | ConstantNameAndType =>
case ConstantField | ConstantMethod | ConstantInterfaceMethod | ConstantNameAndType => new Constant(tag, in.readUnsignedShort(), in.readUnsignedShort())
new Constant(tag, in.readUnsignedShort(), in.readUnsignedShort()) case ConstantInteger => new Constant(tag, new java.lang.Integer(in.readInt()))
case ConstantInteger => new Constant(tag, new java.lang.Integer(in.readInt())) case ConstantFloat => new Constant(tag, new java.lang.Float(in.readFloat()))
case ConstantFloat => new Constant(tag, new java.lang.Float(in.readFloat())) case ConstantLong => new Constant(tag, new java.lang.Long(in.readLong()))
case ConstantLong => new Constant(tag, new java.lang.Long(in.readLong()))
case ConstantDouble => new Constant(tag, new java.lang.Double(in.readDouble())) case ConstantDouble => new Constant(tag, new java.lang.Double(in.readDouble()))
case ConstantUTF8 => new Constant(tag, in.readUTF()) case ConstantUTF8 => new Constant(tag, in.readUTF())
case _ => error("Unknown constant: " + tag) case _ => error("Unknown constant: " + tag)