@@ -17,6 +17,7 @@ import scala.annotation.tailrec
17
17
import scala .collection .mutable
18
18
import scala .language .implicitConversions
19
19
import scala .collection .Seq
20
+ import scala .collection .immutable .{Seq => ISeq }
20
21
21
22
/**
22
23
* The `Utility` object provides utility functions for processing instances
@@ -51,12 +52,12 @@ object Utility extends AnyRef with parsing.TokenTests {
51
52
*/
52
53
def trim (x : Node ): Node = x match {
53
54
case Elem (pre, lab, md, scp, child@_* ) =>
54
- val children : Seq [ Node ] = combineAdjacentTextNodes(child).flatMap(trimProper)
55
+ val children = combineAdjacentTextNodes(child).flatMap(trimProper)
55
56
Elem (pre, lab, md, scp, children.isEmpty, children : _* )
56
57
}
57
58
58
- private def combineAdjacentTextNodes (children : Seq [Node ]): Seq [Node ] =
59
- children.foldRight(Seq .empty[Node ]) {
59
+ private def combineAdjacentTextNodes (children : ISeq [Node ]): ISeq [Node ] =
60
+ children.foldRight(ISeq .empty[Node ]) {
60
61
case (Text (left), Text (right) +: nodes) => Text (left + right) +: nodes
61
62
case (n, nodes) => n +: nodes
62
63
}
@@ -67,7 +68,7 @@ object Utility extends AnyRef with parsing.TokenTests {
67
68
*/
68
69
def trimProper (x : Node ): Seq [Node ] = x match {
69
70
case Elem (pre, lab, md, scp, child@_* ) =>
70
- val children : Seq [ Node ] = combineAdjacentTextNodes(child).flatMap(trimProper)
71
+ val children = combineAdjacentTextNodes(child).flatMap(trimProper)
71
72
Elem (pre, lab, md, scp, children.isEmpty, children : _* )
72
73
case Text (s) =>
73
74
new TextBuffer ().append(s).toText
@@ -89,7 +90,7 @@ object Utility extends AnyRef with parsing.TokenTests {
89
90
*/
90
91
def sort (n : Node ): Node = n match {
91
92
case Elem (pre, lab, md, scp, child@_* ) =>
92
- val children : Seq [ Node ] = child.map(sort)
93
+ val children = child.map(sort)
93
94
Elem (pre, lab, sort(md), scp, children.isEmpty, children : _* )
94
95
case _ => n
95
96
}
0 commit comments