changeset 73339 | 9efdebe24c65 |
parent 73337 | 0af9e7e4476f |
child 73344 | f5c147654661 |
73338:5c0e23d73cea | 73339:9efdebe24c65 |
---|---|
283 |
283 |
284 /* reflection */ |
284 /* reflection */ |
285 |
285 |
286 def is_subclass[A, B](a: Class[A], b: Class[B]): Boolean = |
286 def is_subclass[A, B](a: Class[A], b: Class[B]): Boolean = |
287 { |
287 { |
288 import scala.language.existentials |
|
288 @tailrec def subclass(c: Class[_]): Boolean = |
289 @tailrec def subclass(c: Class[_]): Boolean = |
289 { |
290 { |
290 c == b || |
291 c == b || |
291 { |
292 { |
292 val d = c.getSuperclass |
293 val d = c.getSuperclass |