Skip to content

Commit 3b798b0

Browse files
committed
Merge pull request scala#1566 from densh/topic/asSeenFrom-example
Fixes example in Type.asSeenFrom
2 parents e0b88a9 + 0360313 commit 3b798b0

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

src/reflect/scala/reflect/api/Types.scala

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -171,10 +171,26 @@ trait Types { self: Universe =>
171171
*
172172
* Example:
173173
* {{{
174-
* class D[T] { def m: T }
175-
* class C extends p.D[Int]
176-
* T.asSeenFrom(ThisType(C), D) // (where D is the owner of m)
177-
* = Int
174+
* scala> import scala.reflect.runtime.universe._
175+
* import scala.reflect.runtime.universe._
176+
*
177+
* scala> class D[T] { def m: T = ??? }
178+
* defined class D
179+
*
180+
* scala> class C extends D[Int]
181+
* defined class C
182+
*
183+
* scala> val D = typeOf[D[_]].typeSymbol.asClass
184+
* D: reflect.runtime.universe.ClassSymbol = class D
185+
*
186+
* scala> val C = typeOf[C].typeSymbol.asClass
187+
* C: reflect.runtime.universe.ClassSymbol = class C
188+
*
189+
* scala> val T = D.typeParams(0).asType.toType
190+
* T: reflect.runtime.universe.Type = T
191+
*
192+
* scala> T.asSeenFrom(ThisType(C), D)
193+
* res0: reflect.runtime.universe.Type = scala.Int
178194
* }}}
179195
*/
180196
def asSeenFrom(pre: Type, clazz: Symbol): Type

0 commit comments

Comments
 (0)