blob: 846d6a41bc90eefb7cdaedcc541b107b3b82416a (
plain) (
tree)
|
|
package mixins
abstract class Super {
def foo: Int
}
trait Mixin extends Super {
abstract override def foo = super.foo
}
trait MixinSub extends Super with Mixin {
abstract override def foo: Int = super.foo
}
trait MixinSubSub extends MixinSub {
abstract override def foo = super.foo
}
class Sub extends Super {
def foo: Int = 1
}
class Base extends Sub with MixinSubSub {
override def foo = super.foo
}
trait Mixin1 extends Sub with MixinSubSub {}
class Base1 extends Mixin1 {}
|