summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIulian Dragos <jaguarul@gmail.com>2007-01-05 10:17:08 +0000
committerIulian Dragos <jaguarul@gmail.com>2007-01-05 10:17:08 +0000
commitd4b2af5aaf3905b37b9957210b1ad07431f5918d (patch)
tree733cd4b1dd102039b0670f93f4f522cb21a16fec
parent29da7050a8c603778dd7ec9f0b2c617812e00400 (diff)
downloadscala-d4b2af5aaf3905b37b9957210b1ad07431f5918d.tar.gz
scala-d4b2af5aaf3905b37b9957210b1ad07431f5918d.tar.bz2
scala-d4b2af5aaf3905b37b9957210b1ad07431f5918d.zip
Fixed serialization throughout RedBlack hierarchy
-rwxr-xr-xsrc/library/scala/collection/immutable/RedBlack.scala3
-rw-r--r--test/files/jvm/serialization.check12
2 files changed, 9 insertions, 6 deletions
diff --git a/src/library/scala/collection/immutable/RedBlack.scala b/src/library/scala/collection/immutable/RedBlack.scala
index c95b16dc67..dd3c7ebc94 100755
--- a/src/library/scala/collection/immutable/RedBlack.scala
+++ b/src/library/scala/collection/immutable/RedBlack.scala
@@ -1,5 +1,6 @@
package scala.collection.immutable
+[serializable]
abstract class RedBlack[A] {
def isSmaller(x: A, y: A): boolean
@@ -11,6 +12,7 @@ abstract class RedBlack[A] {
private def mkTree[B](isBlack: boolean, k: A, v: B, l: Tree[B], r: Tree[B]) =
if (isBlack) BlackTree(k, v, l, r) else RedTree(k, v, l, r)
+ [serializable]
abstract class Tree[+B] {
def isEmpty: boolean
def isBlack: boolean
@@ -22,6 +24,7 @@ abstract class RedBlack[A] {
def del(k: A): Tree[B]
def smallest: NonEmpty[B]
}
+ [serializable]
abstract class NonEmpty[+B] extends Tree[B] {
def isEmpty = false
def key: A
diff --git a/test/files/jvm/serialization.check b/test/files/jvm/serialization.check
index b576a27e36..655015e473 100644
--- a/test/files/jvm/serialization.check
+++ b/test/files/jvm/serialization.check
@@ -18,8 +18,8 @@ x = List({buffers,20},{layers,2},{title,3})
y = List({buffers,20},{layers,2},{title,3})
x equals y: true - y equals x: true
-x = {buffers -> 20, layers -> 2, title -> 3}
-y = {buffers -> 20, layers -> 2, title -> 3}
+x = Map(title -> 3, layers -> 2, buffers -> 20)
+y = Map(title -> 3, layers -> 2, buffers -> 20)
x equals y: true - y equals x: true
x = {2, 3}
@@ -38,16 +38,16 @@ x = Stack(c,b,a)
y = Stack(c,b,a)
x equals y: true - y equals x: true
-x = {42 -> FortyTwo}
-y = {42 -> FortyTwo}
+x = Map(42 -> FortyTwo)
+y = Map(42 -> FortyTwo)
x equals y: true - y equals x: true
x = {0, 2}
y = {0, 2}
x equals y: true - y equals x: true
-x = {title -> 3, buffers -> 20, layers -> 2}
-y = {title -> 3, buffers -> 20, layers -> 2}
+x = Map(title -> 3, buffers -> 20, layers -> 2)
+y = Map(title -> 3, buffers -> 20, layers -> 2)
x equals y: true - y equals x: true
x = {0, 8, 9}