summaryrefslogtreecommitdiff
path: root/src/library/scalax/collection/immutable/OrderedIterable.scala
blob: 80fa418eecd482e9add0838da107fbd7a89f5637 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package scalax.collection.immutable

import generic._
import annotation.unchecked.uncheckedVariance

/** Collection classes mixing in this class provide a method
 *  <code>elements</code> which returns an iterator over all the
 *  elements contained in the collection.
 *
 *  @note If a collection has a known <code>size</code>, it should also sub-type <code>SizedIterable</code>.
 *
 *  @author  Matthias Zenger
 *  @autor   Martin Odersky
 *  @owner   Martin Odersky
 *  @version 2.8
 */
trait OrderedIterable[+A] extends immutable.Iterable[A]
                             with OrderedIterableTemplate[OrderedIterable, A @uncheckedVariance]
                             with collection.OrderedIterable[A]

object OrderedIterable extends IterableFactory[OrderedIterable]
                          with EmptyIterableFactory[OrderedIterable] {
  val empty: OrderedIterable[Nothing] = Nil
}