File tree Expand file tree Collapse file tree 3 files changed +17
-2
lines changed
scala-2.11/scala/collection/compat
scala-2.12/scala/collection/compat
test/scala/test/scala/collection Expand file tree Collapse file tree 3 files changed +17
-2
lines changed Original file line number Diff line number Diff line change 1212
1313package scala .collection
1414
15- import scala .collection .generic .IsTraversableLike
15+ import scala .collection .generic .{ CanBuildFrom , GenericOrderedCompanion , IsTraversableLike }
1616import scala .{collection => c }
1717
1818package object compat extends compat.PackageShared {
19+ implicit def genericOrderedCompanionToCBF [A , CC [X ] <: Traversable [X ]](
20+ fact : GenericOrderedCompanion [CC ])(
21+ implicit ordering : Ordering [A ]): CanBuildFrom [Any , A , CC [A ]] =
22+ CompatImpl .simpleCBF(fact.newBuilder[A ])
23+
1924 implicit def toTraversableLikeExtensionMethods [Repr ](self : Repr )(
2025 implicit traversable : IsTraversableLike [Repr ])
2126 : TraversableLikeExtensionMethods [traversable.A , Repr ] =
Original file line number Diff line number Diff line change 1212
1313package scala .collection
1414
15- import scala .collection .generic .IsTraversableLike
15+ import scala .collection .generic .{ CanBuildFrom , GenericOrderedCompanion , IsTraversableLike }
1616import scala .{collection => c }
1717import scala .collection .{mutable => m }
1818
@@ -27,6 +27,11 @@ package object compat extends compat.PackageShared {
2727 build(m.SortedMap .newBuilder[K , V ], source)
2828 }
2929
30+ implicit def genericOrderedCompanionToCBF [A , CC [X ] <: Traversable [X ]](
31+ fact : GenericOrderedCompanion [CC ])(
32+ implicit ordering : Ordering [A ]): CanBuildFrom [Any , A , CC [A ]] =
33+ CompatImpl .simpleCBF(fact.newBuilder[A ])
34+
3035 implicit def toTraversableLikeExtensionMethods [Repr ](self : Repr )(
3136 implicit traversable : IsTraversableLike [Repr ])
3237 : TraversableLikeExtensionMethods [traversable.A , Repr ] =
Original file line number Diff line number Diff line change @@ -17,6 +17,7 @@ import org.junit.Test
1717
1818import scala .collection .compat ._
1919import scala .collection .immutable .BitSet
20+ import scala .collection .mutable .PriorityQueue
2021import scala .collection .LinearSeq
2122
2223class CollectionTest {
@@ -35,6 +36,10 @@ class CollectionTest {
3536 val bT : BitSet = b
3637 assertEquals(BitSet (1 , 2 , 3 ), b)
3738
39+ val c = xs.to(PriorityQueue )
40+ val cT : PriorityQueue [Int ] = c
41+ assert(PriorityQueue (1 , 2 , 3 ) sameElements c)
42+
3843 val ys = List (1 -> " a" , 2 -> " b" )
3944 val m = ys.to(Map )
4045 // Not possible - `to` returns a Col[A] so this is only typed as an Iterable[(Int, String)]
You can’t perform that action at this time.
0 commit comments