summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2010-12-03 06:16:46 +0000
committerPaul Phillips <paulp@improving.org>2010-12-03 06:16:46 +0000
commit811c7f9ba664fcb339c09474af65fa4874f23543 (patch)
treef0e33e34ba419f7fba37d48b19cae74f1a709100 /src
parent715d95479e77b06dd65303886d2e0e70ddcf461f (diff)
downloadscala-811c7f9ba664fcb339c09474af65fa4874f23543.tar.gz
scala-811c7f9ba664fcb339c09474af65fa4874f23543.tar.bz2
scala-811c7f9ba664fcb339c09474af65fa4874f23543.zip
Overrides immutable.{ Map, Set, Seq } to return...
Overrides immutable.{ Map, Set, Seq } to return self on the corresponding toMap/toSet/toSeq. Closes #3953, review by prokopec.
Diffstat (limited to 'src')
-rw-r--r--src/library/scala/collection/immutable/Map.scala2
-rw-r--r--src/library/scala/collection/immutable/Seq.scala1
-rw-r--r--src/library/scala/collection/immutable/Set.scala1
3 files changed, 4 insertions, 0 deletions
diff --git a/src/library/scala/collection/immutable/Map.scala b/src/library/scala/collection/immutable/Map.scala
index 5a6b1be3d5..d345b89057 100644
--- a/src/library/scala/collection/immutable/Map.scala
+++ b/src/library/scala/collection/immutable/Map.scala
@@ -30,6 +30,8 @@ trait Map[A, +B] extends Iterable[(A, B)]
with MapLike[A, B, Map[A, B]] { self =>
override def empty: Map[A, B] = Map.empty
+ override def toMap[T, U](implicit ev: (A, B) <:< (T, U)): immutable.Map[T, U] =
+ self.asInstanceOf[immutable.Map[T, U]]
/** The same map with a given default function */
def withDefault[B1 >: B](d: A => B1): immutable.Map[A, B1] = new Map.WithDefault[A, B1](this, d)
diff --git a/src/library/scala/collection/immutable/Seq.scala b/src/library/scala/collection/immutable/Seq.scala
index 18d3b9b263..5217b19097 100644
--- a/src/library/scala/collection/immutable/Seq.scala
+++ b/src/library/scala/collection/immutable/Seq.scala
@@ -26,6 +26,7 @@ trait Seq[+A] extends Iterable[A]
with GenericTraversableTemplate[A, Seq]
with SeqLike[A, Seq[A]] {
override def companion: GenericCompanion[Seq] = Seq
+ override def toSeq: Seq[A] = this
}
/** $factoryInfo
diff --git a/src/library/scala/collection/immutable/Set.scala b/src/library/scala/collection/immutable/Set.scala
index ffd41752a4..d5520163d4 100644
--- a/src/library/scala/collection/immutable/Set.scala
+++ b/src/library/scala/collection/immutable/Set.scala
@@ -29,6 +29,7 @@ trait Set[A] extends Iterable[A]
with GenericSetTemplate[A, Set]
with SetLike[A, Set[A]] {
override def companion: GenericCompanion[Set] = Set
+ override def toSet[B >: A]: Set[B] = this.asInstanceOf[Set[B]]
}
/** $factoryInfo