summaryrefslogtreecommitdiff
path: root/src/library/scala/runtime/ScalaRunTime.scala
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2012-04-19 15:11:58 +0200
committerEugene Burmako <xeno.by@gmail.com>2012-04-20 12:44:52 +0200
commitbe11c92b6e84891f36fd4b271303b49c4aac23c8 (patch)
treebd43cff59594e5d1db339e66db7cd651ce0e97b8 /src/library/scala/runtime/ScalaRunTime.scala
parent016bc3db52d6f1ffa3ef2285d5801f82f5f49167 (diff)
downloadscala-be11c92b6e84891f36fd4b271303b49c4aac23c8.tar.gz
scala-be11c92b6e84891f36fd4b271303b49c4aac23c8.tar.bz2
scala-be11c92b6e84891f36fd4b271303b49c4aac23c8.zip
fixes SI-5680
Diffstat (limited to 'src/library/scala/runtime/ScalaRunTime.scala')
-rw-r--r--src/library/scala/runtime/ScalaRunTime.scala13
1 files changed, 2 insertions, 11 deletions
diff --git a/src/library/scala/runtime/ScalaRunTime.scala b/src/library/scala/runtime/ScalaRunTime.scala
index 7a932c21bc..d2adc26d66 100644
--- a/src/library/scala/runtime/ScalaRunTime.scala
+++ b/src/library/scala/runtime/ScalaRunTime.scala
@@ -51,17 +51,8 @@ object ScalaRunTime {
* e.g. classOf[int], not classOf[java.lang.Integer]. The compiler
* rewrites expressions like 5.getClass to come here.
*/
- def anyValClass[T <: AnyVal](value: T): Class[T] = (value match {
- case x: Byte => java.lang.Byte.TYPE
- case x: Short => java.lang.Short.TYPE
- case x: Char => java.lang.Character.TYPE
- case x: Int => java.lang.Integer.TYPE
- case x: Long => java.lang.Long.TYPE
- case x: Float => java.lang.Float.TYPE
- case x: Double => java.lang.Double.TYPE
- case x: Boolean => java.lang.Boolean.TYPE
- case x: Unit => java.lang.Void.TYPE
- }).asInstanceOf[Class[T]]
+ def anyValClass[T <: AnyVal : ClassManifest](value: T): Class[T] =
+ classManifest[T].erasure.asInstanceOf[Class[T]]
/** Retrieve generic array element */
def array_apply(xs: AnyRef, idx: Int): Any = xs match {