blob: b6b5a2ede239763d7143c31af759be2a7242dcfc (
plain) (
tree)
|
|
import scala.reflect.runtime.universe._
import scala.reflect.runtime.{currentMirror => cm}
import scala.reflect.{ClassTag, classTag}
object Test extends App {
def test[T: ClassTag: TypeTag](x: T) = {
println(s"========${classTag[T].runtimeClass}========")
println(cm.reflect(x).reflectMethod(typeOf[T].member(TermName("getClass")).asMethod)())
println(cm.reflect(x).reflectMethod(typeOf[T].member(TermName("toString")).asMethod)())
}
test(2.toByte)
test(2.toShort)
test(2.toInt)
test(2.toLong)
test(2.toFloat)
test(2.toDouble)
test('2')
test(true)
test(())
}
|