blob: 3734405f8bdaab34c7551e2f942bfafa2e7b08db (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
|
trait Iterable[A <: Bound[A], Bound[_]] {
type MyType[x <: Bound[x]] <: Iterable[x, Bound]
def map[B <: Bound[B]](f: A => B): MyType[B]
def flatMap[B <: Bound[B]](f: A => MyType[B]): MyType[B]
def filter(p: A => Boolean): MyType[A]
}
trait OrderedSet[T <: Ordered[T]] extends Iterable[T, Ordered] {
type MyType[x <: Ordered[x]] = OrderedSet[x]
}
|