Skip to content

Commit 1399695

Browse files
committed
Use Vector for non-immutable collecitons
1 parent e044d5d commit 1399695

File tree

3 files changed

+12
-3
lines changed

3 files changed

+12
-3
lines changed

shared/src/main/scala/scala/xml/NodeSeq.scala

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@ import scala.collection.Seq
2626
object NodeSeq {
2727
final val Empty: NodeSeq = fromSeq(Nil)
2828
def fromSeq(s: Seq[Node]): NodeSeq = new NodeSeq {
29-
override def theSeq: ScalaVersionSpecific.SeqOfNode = s.toSeq
29+
override def theSeq: ScalaVersionSpecific.SeqOfNode = s match {
30+
case ns: ScalaVersionSpecific.SeqOfNode => ns
31+
case _ => s.toVector
32+
}
3033
}
3134

3235
// ---

shared/src/main/scala/scala/xml/PrefixedAttribute.scala

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,10 @@ class PrefixedAttribute(
3232
)
3333
extends Attribute
3434
{
35-
override val value: ScalaVersionSpecific.SeqOfNode = if (_value == null) null else _value.toSeq
35+
override val value: ScalaVersionSpecific.SeqOfNode = if (_value == null) null else _value match {
36+
case ns: ScalaVersionSpecific.SeqOfNode => ns
37+
case _ => _value.toVector
38+
}
3639

3740
override val next: MetaData = if (value != null) next1 else next1.remove(key)
3841

shared/src/main/scala/scala/xml/UnprefixedAttribute.scala

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,10 @@ class UnprefixedAttribute(
2828
)
2929
extends Attribute
3030
{
31-
override val value: ScalaVersionSpecific.SeqOfNode = if (_value == null) null else _value.toSeq
31+
override val value: ScalaVersionSpecific.SeqOfNode = if (_value == null) null else _value match {
32+
case ns: ScalaVersionSpecific.SeqOfNode => ns
33+
case _ => _value.toVector
34+
}
3235

3336
final override val pre: scala.Null = null
3437
override val next: MetaData = if (value != null) next1 else next1.remove(key)

0 commit comments

Comments
 (0)