package scala.collection
import generic._
trait SortedSetLike[A, +This <: SortedSet[A] with SortedSetLike[A, This]] extends Sorted[A, This] with SetLike[A, This] {
self =>
implicit def ordering: Ordering[A]
override def keySet = repr
override def firstKey: A = head
override def lastKey: A = last
def rangeImpl(from: Option[A], until: Option[A]): This
override def from(from: A): This = rangeImpl(Some(from), None)
override def until(until: A): This = rangeImpl(None, Some(until))
override def range(from: A, until: A): This = rangeImpl(Some(from), Some(until))
override def subsetOf(that: GenSet[A]): Boolean = that match {
case that: SortedSet[_] if that.ordering == ordering => that.hasAll(this.iterator)
case that => super.subsetOf(that)
}
}