File: bounds.scala

package info (click to toggle)
scala 2.9.2%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 67,208 kB
  • sloc: java: 27,488; xml: 4,412; python: 2,297; sh: 734; makefile: 16; ansic: 6
file content (11 lines) | stat: -rw-r--r-- 345 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
trait Map[A, +C] {
  def ++ [B1 >: C] (kvs: Iterable[Pair[A, B1]]): Map[A, B1] = this
  def ++ [B1 >: C] (kvs: Iterator[Pair[A, B1]]): Map[A, B1] = this
}

class ListMap[A, +B] extends Map[A, B] {}

object ListMap {
  def empty[X, Y] = new ListMap[X, Y]
  def apply[A1, B2](elems: Pair[A1, B2]*): Map[A1, B2] = empty[A1,B2].++(elems.iterator)
}