blob: e1fc62f40f2726bbd15b62338f736fd91d7574f2 (
plain) (
blame)
1
2
3
4
5
6
|
abstract class Extensible[A, This <: Extensible[A, This]](x: A, xs: This) requires This {
def mkObj(x: A, xs: This): This;
}
class Fixed[A](x: A, xs: Fixed[A]) extends Extensible[A, Fixed[A]](x, xs) {
def mkObj(x: A, xs: Fixed[A]) = new Fixed(x, xs);
}
|