@@ -19,8 +19,8 @@ object ReuseNodesTest {
19
19
20
20
class OriginalTranformr (rules : RewriteRule * ) extends RuleTransformer (rules:_* ) {
21
21
override def transform (ns : Seq [Node ]): Seq [Node ] = {
22
- val xs = ns.toStream map transform
23
- val (xs1, xs2) = xs.zip(ns).span { case (x, n) => unchanged(n, x) }
22
+ val xs : Seq [ Seq [ Node ]] = ns.toStream map transform
23
+ val (xs1 : Seq [( Seq [ Node ], Node )], xs2 : Seq [( Seq [ Node ], Node )] ) = xs.zip(ns).span { case (x, n) => unchanged(n, x) }
24
24
25
25
if (xs2.isEmpty) ns
26
26
else xs1.map(_._2) ++ xs2.head._1 ++ transform(ns.drop(xs1.length + 1 ))
@@ -30,7 +30,7 @@ object ReuseNodesTest {
30
30
31
31
class ModifiedTranformr (rules : RewriteRule * ) extends RuleTransformer (rules:_* ) {
32
32
override def transform (ns : Seq [Node ]): Seq [Node ] = {
33
- val changed = ns flatMap transform
33
+ val changed : Seq [ Node ] = ns flatMap transform
34
34
35
35
if (changed.length != ns.length || changed.zip(ns).exists(p => p._1 != p._2)) changed
36
36
else ns
@@ -40,16 +40,16 @@ object ReuseNodesTest {
40
40
41
41
class AlternateTranformr (rules : RewriteRule * ) extends RuleTransformer (rules:_* ) {
42
42
override def transform (ns : Seq [Node ]): Seq [Node ] = {
43
- val xs = ns.toStream.map(transform)
44
- val (xs1, xs2) = xs.zip(ns).span { case (x, n) => unchanged(n, x) }
43
+ val xs : Seq [ Seq [ Node ]] = ns.toStream.map(transform)
44
+ val (xs1 : Seq [( Seq [ Node ], Node )], xs2 : Seq [( Seq [ Node ], Node )] ) = xs.zip(ns).span { case (x, n) => unchanged(n, x) }
45
45
46
46
if (xs2.isEmpty) ns
47
47
else xs1.map(_._2) ++ xs2.head._1 ++ transform(ns.drop(xs1.length + 1 ))
48
48
}
49
49
override def transform (n : Node ): Seq [Node ] = super .transform(n)
50
50
}
51
51
52
- def rewriteRule = new RewriteRule {
52
+ def rewriteRule : RewriteRule = new RewriteRule {
53
53
override def transform (n : Node ): NodeSeq = n match {
54
54
case n if n.label == " change" => Elem (
55
55
n.prefix, " changed" , n.attributes, n.scope, n.child.isEmpty, n.child : _* )
@@ -58,7 +58,7 @@ object ReuseNodesTest {
58
58
}
59
59
60
60
@ DataPoints
61
- def tranformers () = Array (
61
+ def tranformers (): Array [ RuleTransformer ] = Array (
62
62
new OriginalTranformr (rewriteRule),
63
63
new ModifiedTranformr (rewriteRule),
64
64
new AlternateTranformr (rewriteRule))
@@ -68,16 +68,16 @@ object ReuseNodesTest {
68
68
class ReuseNodesTest {
69
69
70
70
@ Theory
71
- def transformReferentialEquality (rt : RuleTransformer ) = {
72
- val original = <p ><lost /></p >
73
- val tranformed = rt.transform(original)
71
+ def transformReferentialEquality (rt : RuleTransformer ): Unit = {
72
+ val original : Elem = <p ><lost /></p >
73
+ val tranformed : Seq [ Node ] = rt.transform(original)
74
74
assertSame(original, tranformed)
75
75
}
76
76
77
77
@ Theory
78
- def transformReferentialEqualityOnly (rt : RuleTransformer ) = {
79
- val original = <changed ><change ><lost /><a ><b ><c /></b ></a ></change ><a ><b ><c /></b ></a ></changed >
80
- val transformed = rt.transform(original)
78
+ def transformReferentialEqualityOnly (rt : RuleTransformer ): Unit = {
79
+ val original : Elem = <changed ><change ><lost /><a ><b ><c /></b ></a ></change ><a ><b ><c /></b ></a ></changed >
80
+ val transformed : Seq [ Node ] = rt.transform(original)
81
81
recursiveAssert(original,transformed)
82
82
}
83
83
0 commit comments