Skip to content

Commit be4e709

Browse files
committed
Rename LinkedMap to SeqMap
1 parent 6f9313f commit be4e709

File tree

3 files changed

+50
-50
lines changed

3 files changed

+50
-50
lines changed

library/src/scala/collection/immutable/ListMap.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ import scala.collection.mutable.{Builder, ImmutableBuilder}
4343
*/
4444
sealed class ListMap[K, +V]
4545
extends AbstractMap[K, V]
46-
with LinkedMap[K, V]
46+
with SeqMap[K, V]
4747
with MapOps[K, V, ListMap, ListMap[K, V]]
4848
with StrictOptimizedIterableOps[(K, V), Iterable, ListMap[K, V]] {
4949

library/src/scala/collection/immutable/LinkedMap.scala renamed to library/src/scala/collection/immutable/SeqMap.scala

Lines changed: 48 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ import scala.collection.mutable.{Builder, ImmutableBuilder}
88

99
/**
1010
* A generic trait for ordered immutable maps. Concrete classes have to provide
11-
* functionality for the abstract methods in `LinkedMap`.
11+
* functionality for the abstract methods in `SeqMap`.
1212
*
13-
* Note that when checking for equality [[LinkedMap]] does not take into account
13+
* Note that when checking for equality [[SeqMap]] does not take into account
1414
* ordering.
1515
*
1616
* @tparam K the type of the keys contained in this linked map.
@@ -20,39 +20,39 @@ import scala.collection.mutable.{Builder, ImmutableBuilder}
2020
* @version 2.13
2121
* @since 2.13
2222
* @define coll immutable linked map
23-
* @define Coll `immutable.LinkedMap`
23+
* @define Coll `immutable.SeqMap`
2424
*/
2525

26-
trait LinkedMap[K, +V]
26+
trait SeqMap[K, +V]
2727
extends AbstractMap[K, V]
28-
with MapOps[K, V, LinkedMap, LinkedMap[K, V]]
28+
with MapOps[K, V, SeqMap, SeqMap[K, V]]
2929

30-
object LinkedMap extends MapFactory[LinkedMap] {
31-
def empty[K, V]: LinkedMap[K, V] = EmptyLinkedMap.asInstanceOf[LinkedMap[K, V]]
30+
object SeqMap extends MapFactory[SeqMap] {
31+
def empty[K, V]: SeqMap[K, V] = EmptyLinkedMap.asInstanceOf[SeqMap[K, V]]
3232

33-
def from[K, V](it: collection.IterableOnce[(K, V)]): LinkedMap[K, V] =
33+
def from[K, V](it: collection.IterableOnce[(K, V)]): SeqMap[K, V] =
3434
it match {
35-
case vm: LinkedMap[K, V] => vm
35+
case sm: SeqMap[K, V] => sm
3636
case _ => (newBuilder[K, V] ++= it).result()
3737
}
3838

39-
def newBuilder[K, V]: Builder[(K, V), LinkedMap[K, V]] = VectorMap.newBuilder
39+
def newBuilder[K, V]: Builder[(K, V), SeqMap[K, V]] = VectorMap.newBuilder
4040

4141
@SerialVersionUID(3L)
42-
private object EmptyLinkedMap extends LinkedMap[Any, Nothing] {
42+
private object EmptyLinkedMap extends SeqMap[Any, Nothing] {
4343
override def size: Int = 0
4444
override def knownSize: Int = 0
4545
override def apply(key: Any) = throw new NoSuchElementException("key not found: " + key)
4646
override def contains(key: Any) = false
4747
def get(key: Any): Option[Nothing] = None
4848
override def getOrElse [V1](key: Any, default: => V1): V1 = default
4949
def iterator: Iterator[(Any, Nothing)] = Iterator.empty
50-
def updated [V1] (key: Any, value: V1): LinkedMap[Any, V1] = new LinkedMap1(key, value)
51-
def remove(key: Any): LinkedMap[Any, Nothing] = this
50+
def updated [V1] (key: Any, value: V1): SeqMap[Any, V1] = new SeqMap1(key, value)
51+
def remove(key: Any): SeqMap[Any, Nothing] = this
5252
}
5353

5454
@SerialVersionUID(3L)
55-
final class LinkedMap1[K, +V](key1: K, value1: V) extends LinkedMap[K,V] with Serializable {
55+
final class SeqMap1[K, +V](key1: K, value1: V) extends SeqMap[K,V] with Serializable {
5656
override def size: Int = 1
5757
override def knownSize: Int = 1
5858
override def apply(key: K) = if (key == key1) value1 else throw new NoSuchElementException("key not found: " + key)
@@ -62,18 +62,18 @@ object LinkedMap extends MapFactory[LinkedMap] {
6262
override def getOrElse [V1 >: V](key: K, default: => V1): V1 =
6363
if (key == key1) value1 else default
6464
def iterator = Iterator.single((key1, value1))
65-
def updated[V1 >: V](key: K, value: V1): LinkedMap[K, V1] =
66-
if (key == key1) new LinkedMap1(key1, value)
67-
else new LinkedMap2(key1, value1, key, value)
68-
def remove(key: K): LinkedMap[K, V] =
69-
if (key == key1) LinkedMap.empty else this
65+
def updated[V1 >: V](key: K, value: V1): SeqMap[K, V1] =
66+
if (key == key1) new SeqMap1(key1, value)
67+
else new SeqMap2(key1, value1, key, value)
68+
def remove(key: K): SeqMap[K, V] =
69+
if (key == key1) SeqMap.empty else this
7070
override def foreach[U](f: ((K, V)) => U): Unit = {
7171
f((key1, value1))
7272
}
7373
}
7474

7575
@SerialVersionUID(3L)
76-
final class LinkedMap2[K, +V](key1: K, value1: V, key2: K, value2: V) extends LinkedMap[K,V] with Serializable {
76+
final class SeqMap2[K, +V](key1: K, value1: V, key2: K, value2: V) extends SeqMap[K,V] with Serializable {
7777
override def size: Int = 2
7878
override def knownSize: Int = 2
7979
override def apply(key: K) =
@@ -90,21 +90,21 @@ object LinkedMap extends MapFactory[LinkedMap] {
9090
else if (key == key2) value2
9191
else default
9292
def iterator = ((key1, value1) :: (key2, value2) :: Nil).iterator
93-
def updated[V1 >: V](key: K, value: V1): LinkedMap[K, V1] =
94-
if (key == key1) new LinkedMap2(key1, value, key2, value2)
95-
else if (key == key2) new LinkedMap2(key1, value1, key2, value)
96-
else new LinkedMap3(key1, value1, key2, value2, key, value)
97-
def remove(key: K): LinkedMap[K, V] =
98-
if (key == key1) new LinkedMap1(key2, value2)
99-
else if (key == key2) new LinkedMap1(key1, value1)
93+
def updated[V1 >: V](key: K, value: V1): SeqMap[K, V1] =
94+
if (key == key1) new SeqMap2(key1, value, key2, value2)
95+
else if (key == key2) new SeqMap2(key1, value1, key2, value)
96+
else new SeqMap3(key1, value1, key2, value2, key, value)
97+
def remove(key: K): SeqMap[K, V] =
98+
if (key == key1) new SeqMap1(key2, value2)
99+
else if (key == key2) new SeqMap1(key1, value1)
100100
else this
101101
override def foreach[U](f: ((K, V)) => U): Unit = {
102102
f((key1, value1)); f((key2, value2))
103103
}
104104
}
105105

106106
@SerialVersionUID(3L)
107-
class LinkedMap3[K, +V](key1: K, value1: V, key2: K, value2: V, key3: K, value3: V) extends LinkedMap[K,V] with Serializable {
107+
class SeqMap3[K, +V](key1: K, value1: V, key2: K, value2: V, key3: K, value3: V) extends SeqMap[K,V] with Serializable {
108108
override def size: Int = 3
109109
override def knownSize: Int = 3
110110
override def apply(key: K) =
@@ -124,23 +124,23 @@ object LinkedMap extends MapFactory[LinkedMap] {
124124
else if (key == key3) value3
125125
else default
126126
def iterator = ((key1, value1) :: (key2, value2) :: (key3, value3) :: Nil).iterator
127-
def updated[V1 >: V](key: K, value: V1): LinkedMap[K, V1] =
128-
if (key == key1) new LinkedMap3(key1, value, key2, value2, key3, value3)
129-
else if (key == key2) new LinkedMap3(key1, value1, key2, value, key3, value3)
130-
else if (key == key3) new LinkedMap3(key1, value1, key2, value2, key3, value)
131-
else new LinkedMap4(key1, value1, key2, value2, key3, value3, key, value)
132-
def remove(key: K): LinkedMap[K, V] =
133-
if (key == key1) new LinkedMap2(key2, value2, key3, value3)
134-
else if (key == key2) new LinkedMap2(key1, value1, key3, value3)
135-
else if (key == key3) new LinkedMap2(key1, value1, key2, value2)
127+
def updated[V1 >: V](key: K, value: V1): SeqMap[K, V1] =
128+
if (key == key1) new SeqMap3(key1, value, key2, value2, key3, value3)
129+
else if (key == key2) new SeqMap3(key1, value1, key2, value, key3, value3)
130+
else if (key == key3) new SeqMap3(key1, value1, key2, value2, key3, value)
131+
else new SeqMap4(key1, value1, key2, value2, key3, value3, key, value)
132+
def remove(key: K): SeqMap[K, V] =
133+
if (key == key1) new SeqMap2(key2, value2, key3, value3)
134+
else if (key == key2) new SeqMap2(key1, value1, key3, value3)
135+
else if (key == key3) new SeqMap2(key1, value1, key2, value2)
136136
else this
137137
override def foreach[U](f: ((K, V)) => U): Unit = {
138138
f((key1, value1)); f((key2, value2)); f((key3, value3))
139139
}
140140
}
141141

142142
@SerialVersionUID(3L)
143-
final class LinkedMap4[K, +V](key1: K, value1: V, key2: K, value2: V, key3: K, value3: V, key4: K, value4: V) extends LinkedMap[K,V] with Serializable {
143+
final class SeqMap4[K, +V](key1: K, value1: V, key2: K, value2: V, key3: K, value3: V, key4: K, value4: V) extends SeqMap[K,V] with Serializable {
144144
override def size: Int = 4
145145
override def knownSize: Int = 4
146146
override def apply(key: K) =
@@ -163,11 +163,11 @@ object LinkedMap extends MapFactory[LinkedMap] {
163163
else if (key == key4) value4
164164
else default
165165
def iterator = ((key1, value1) :: (key2, value2) :: (key3, value3) :: (key4, value4) :: Nil).iterator
166-
def updated[V1 >: V](key: K, value: V1): LinkedMap[K, V1] =
167-
if (key == key1) new LinkedMap4(key1, value, key2, value2, key3, value3, key4, value4)
168-
else if (key == key2) new LinkedMap4(key1, value1, key2, value, key3, value3, key4, value4)
169-
else if (key == key3) new LinkedMap4(key1, value1, key2, value2, key3, value, key4, value4)
170-
else if (key == key4) new LinkedMap4(key1, value1, key2, value2, key3, value3, key4, value)
166+
def updated[V1 >: V](key: K, value: V1): SeqMap[K, V1] =
167+
if (key == key1) new SeqMap4(key1, value, key2, value2, key3, value3, key4, value4)
168+
else if (key == key2) new SeqMap4(key1, value1, key2, value, key3, value3, key4, value4)
169+
else if (key == key3) new SeqMap4(key1, value1, key2, value2, key3, value, key4, value4)
170+
else if (key == key4) new SeqMap4(key1, value1, key2, value2, key3, value3, key4, value)
171171
else {
172172
// Directly create the elements for performance reasons
173173
val fields = Vector(key1, key2, key3, key4, key)
@@ -189,11 +189,11 @@ object LinkedMap extends MapFactory[LinkedMap] {
189189
)
190190
new VectorMap(fields, underlying)
191191
}
192-
def remove(key: K): LinkedMap[K, V] =
193-
if (key == key1) new LinkedMap3(key2, value2, key3, value3, key4, value4)
194-
else if (key == key2) new LinkedMap3(key1, value1, key3, value3, key4, value4)
195-
else if (key == key3) new LinkedMap3(key1, value1, key2, value2, key4, value4)
196-
else if (key == key4) new LinkedMap3(key1, value1, key2, value2, key3, value3)
192+
def remove(key: K): SeqMap[K, V] =
193+
if (key == key1) new SeqMap3(key2, value2, key3, value3, key4, value4)
194+
else if (key == key2) new SeqMap3(key1, value1, key3, value3, key4, value4)
195+
else if (key == key3) new SeqMap3(key1, value1, key2, value2, key4, value4)
196+
else if (key == key4) new SeqMap3(key1, value1, key2, value2, key3, value3)
197197
else this
198198
override def foreach[U](f: ((K, V)) => U): Unit = {
199199
f((key1, value1)); f((key2, value2)); f((key3, value3)); f((key4, value4))

library/src/scala/collection/immutable/VectorMap.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ final class VectorMap[K, +V] private[immutable] (
2626
private val fields: Vector[K],
2727
private val underlying: Map[K, (Int, V)])
2828
extends AbstractMap[K, V]
29-
with LinkedMap[K, V]
29+
with SeqMap[K, V]
3030
with MapOps[K, V, VectorMap, VectorMap[K, V]]
3131
with StrictOptimizedIterableOps[(K, V), Iterable, VectorMap[K, V]] {
3232

0 commit comments

Comments
 (0)