aboutsummaryrefslogblamecommitdiff
path: root/tests/run/classof.scala
blob: 734838b302e1c91a7cd21b11bdd0ec47e7e3ed2b (plain) (tree)
1
2
3
4
5
6
7
8
9
                                               




                                                         


                                                              










                             
                             
                               
                                


                                                
                        




                                         
                           



                                        
class ValueClass(val i: Integer) extends AnyVal
class SomeClass

object Test {
  def main(args: Array[String]): Unit = {
    val cls: Predef.Class[SomeClass] = classOf[SomeClass]
    val valCls: Predef.Class[ValueClass] = classOf[ValueClass]
    val iCls: Class[Int] = classOf[Int]

    println("Value types:")
    println(classOf[Unit])
    println(classOf[Boolean])
    println(classOf[Byte])
    println(classOf[Short])
    println(classOf[Char])
    println(classOf[Int])
    println(classOf[Long])
    println(classOf[Float])
    println(classOf[Double])

    println("\nClass types:")
    println(classOf[SomeClass])
    println(classOf[ValueClass])
    println(classOf[List[Array[Float]]])
    println(classOf[(String, Map[Int, String])])

    println("\nArrays:")
    println(classOf[Array[Unit]])
    println(classOf[Array[Int]])
    println(classOf[Array[Double]])
    println(classOf[Array[List[String]]])

    println("\nFunctions:")
    println(classOf[(Int, Int) => Unit])
    println(classOf[Int => Boolean])
  }
}