summaryrefslogtreecommitdiff
path: root/test/files/run/reflection-equality.scala
blob: 40f116bb534c958afa5f087c7157da106eb9137b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import scala.tools.partest.ReplTest

object Test extends ReplTest {
  def code = """
    |class X {
    |   def methodIntIntInt(x: Int, y: Int) = x+y
    |}
    |
    |import scala.reflect.runtime.universe._
    |import scala.reflect.runtime.{ currentMirror => cm }
    |def im: InstanceMirror = cm.reflect(new X)
    |val cs: ClassSymbol = im.symbol
    |val ts: Type = cs.typeSignature
    |val ms: MethodSymbol = ts.declaration(TermName("methodIntIntInt")).asMethod
    |val MethodType( _, t1 ) = ms.typeSignature
    |val t2 = typeOf[scala.Int]
    |t1 == t2
    |t1 =:= t2
    |t1 <:< t2
    |t2 <:< t1
    |""".stripMargin
}