blob: 9d7aa94341e30c45595bc43df8bef0b43f62b0a4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
// interesting hierarchies/overrides distilled from reflect/compiler
trait Aliases {
val TypeTag = "universe.TypeTag"
}
trait AliasesOverrides extends Aliases { // or self: Aliases =>
override val TypeTag = "the real universe.TypeTag"
}
class Context extends Aliases with AliasesOverrides
trait SymbolTable {
def currentRunId: Int = -1
}
trait ReflectSetup extends SymbolTable {
override val currentRunId = 1
}
class G extends SymbolTable with ReflectSetup
object Test extends App {
println((new Context).TypeTag)
println((new G).currentRunId)
}
|