summaryrefslogtreecommitdiff
path: root/src/library/scala/collection/immutable/HashMap.scala
diff options
context:
space:
mode:
authorRuediger Klaehn <rklaehn@gmail.com>2012-08-20 23:55:21 +0200
committerRuediger Klaehn <rklaehn@gmail.com>2012-08-20 23:55:21 +0200
commitebf17362b58ad52f81c7968523293371f92daa90 (patch)
tree43665385005708e1641c2a645e83a74a2ac89660 /src/library/scala/collection/immutable/HashMap.scala
parent1b10fadbc2d049ec7a5c7eb90e010b421e68015b (diff)
downloadscala-ebf17362b58ad52f81c7968523293371f92daa90.tar.gz
scala-ebf17362b58ad52f81c7968523293371f92daa90.tar.bz2
scala-ebf17362b58ad52f81c7968523293371f92daa90.zip
Added assertions for tree consistency
Diffstat (limited to 'src/library/scala/collection/immutable/HashMap.scala')
-rw-r--r--src/library/scala/collection/immutable/HashMap.scala4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/library/scala/collection/immutable/HashMap.scala b/src/library/scala/collection/immutable/HashMap.scala
index b8b9f9973e..8ecad063f2 100644
--- a/src/library/scala/collection/immutable/HashMap.scala
+++ b/src/library/scala/collection/immutable/HashMap.scala
@@ -230,6 +230,7 @@ object HashMap extends ImmutableMapFactory[HashMap] with BitOperations.Int {
private[collection] class HashMapCollision1[A, +B](private[collection] val hash: Int, val kvs: ListMap[A, B @uV])
extends HashMap[A, B @uV] {
+ assert(kvs.size > 1)
override def size = kvs.size
@@ -278,6 +279,9 @@ object HashMap extends ImmutableMapFactory[HashMap] with BitOperations.Int {
private[collection] val size0: Int
) extends HashMap[A, B @uV] {
+ assert(Integer.bitCount(bitmap) == elems.length)
+ assert(elems.length > 1 || (elems.length == 1 && elems(0).isInstanceOf[HashTrieMap[_,_]]))
+
/*
def this (level: Int, m1: HashMap1[A,B], m2: HashMap1[A,B]) = {
this(((m1.hash >>> level) & 0x1f) | ((m2.hash >>> level) & 0x1f), {