diff options
author | Josh Suereth <Joshua.Suereth@gmail.com> | 2012-11-04 09:15:10 -0800 |
---|---|---|
committer | Josh Suereth <Joshua.Suereth@gmail.com> | 2012-11-04 09:15:10 -0800 |
commit | 3b798b039a24229cf9edb5f396de4dd9fe5980ee (patch) | |
tree | 78bc0c4950c014364a2d0af7c0d7bab91f1c2c8f /src | |
parent | e0b88a99db83e74f6bb6166787cca60c5a17bd1e (diff) | |
parent | 0360313494dced3a072685aadc13d2a275bde1a8 (diff) | |
download | scala-3b798b039a24229cf9edb5f396de4dd9fe5980ee.tar.gz scala-3b798b039a24229cf9edb5f396de4dd9fe5980ee.tar.bz2 scala-3b798b039a24229cf9edb5f396de4dd9fe5980ee.zip |
Merge pull request #1566 from densh/topic/asSeenFrom-example
Fixes example in Type.asSeenFrom
Diffstat (limited to 'src')
-rw-r--r-- | src/reflect/scala/reflect/api/Types.scala | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/src/reflect/scala/reflect/api/Types.scala b/src/reflect/scala/reflect/api/Types.scala index f3201ae328..143438b8f5 100644 --- a/src/reflect/scala/reflect/api/Types.scala +++ b/src/reflect/scala/reflect/api/Types.scala @@ -171,10 +171,26 @@ trait Types { self: Universe => * * Example: * {{{ - * class D[T] { def m: T } - * class C extends p.D[Int] - * T.asSeenFrom(ThisType(C), D) // (where D is the owner of m) - * = Int + * scala> import scala.reflect.runtime.universe._ + * import scala.reflect.runtime.universe._ + * + * scala> class D[T] { def m: T = ??? } + * defined class D + * + * scala> class C extends D[Int] + * defined class C + * + * scala> val D = typeOf[D[_]].typeSymbol.asClass + * D: reflect.runtime.universe.ClassSymbol = class D + * + * scala> val C = typeOf[C].typeSymbol.asClass + * C: reflect.runtime.universe.ClassSymbol = class C + * + * scala> val T = D.typeParams(0).asType.toType + * T: reflect.runtime.universe.Type = T + * + * scala> T.asSeenFrom(ThisType(C), D) + * res0: reflect.runtime.universe.Type = scala.Int * }}} */ def asSeenFrom(pre: Type, clazz: Symbol): Type |