aboutsummaryrefslogtreecommitdiff
path: root/tests/invalid/pos/t4365/a_1.scala
blob: 0be5ca8a19e9afd088c2bb263d2c4e294204e05d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Invalid because it relies on internal traits of views that will change their names.
import scala.collection._

trait SeqViewLike[+A,
                  +Coll,
                  +This <: SeqView[A, Coll] with SeqViewLike[A, Coll, Nothing]]
  extends Seq[A]   with GenSeqViewLike[A, Coll, Nothing]
{

  trait Transformed[+B] extends super[GenSeqViewLike].Transformed[B]

  abstract class AbstractTransformed[+B] extends Seq[B] with Transformed[B] {
    def underlying: Coll = error("")
  }

  trait Reversed extends Transformed[A] with super[GenSeqViewLike].Reversed

  protected def newReversed: Transformed[A] = new AbstractTransformed[A] with Reversed
}