How would I convert:
trait Foo[A <: Foo[A]]
to a type member?
I.e., I want something along the lines of the following:
trait Foo {
type A <: Foo {type A = ???}
}
but I am having difficulty because the name A is already taken within the type refinement. This question is similar (and spawned from): F-bounded quantification through type member instead of type parameter?
Use a self-type: