summaryrefslogtreecommitdiff
path: root/src/library
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2012-01-29 23:53:45 +0100
committerMartin Odersky <odersky@gmail.com>2012-01-29 23:54:17 +0100
commit98d7f7e9b5409af08630253756dd38805b81edb0 (patch)
tree7407ac20e790590786b208cbb6bf7db4dd27b988 /src/library
parenta03c34c140709e95bb6ab6a8984747b83d630eea (diff)
parent3e49826ca0c0c57ef14bc107a45084def5520d80 (diff)
downloadscala-98d7f7e9b5409af08630253756dd38805b81edb0.tar.gz
scala-98d7f7e9b5409af08630253756dd38805b81edb0.tar.bz2
scala-98d7f7e9b5409af08630253756dd38805b81edb0.zip
Merge remote-tracking branch 'paulp/inline' into topic/inline
Temporarily removed getClass from AnyVal to get build going. Disabled anyval-childen test. Fixed some other build problems. Implemented step 1 + 2 of inline classes proposal.
Diffstat (limited to 'src/library')
-rw-r--r--src/library/scala/AnyVal.scala5
-rw-r--r--src/library/scala/Boolean.scala2
-rw-r--r--src/library/scala/Byte.scala114
-rw-r--r--src/library/scala/Char.scala114
-rw-r--r--src/library/scala/Double.scala2
-rw-r--r--src/library/scala/Float.scala2
-rw-r--r--src/library/scala/Int.scala114
-rw-r--r--src/library/scala/Long.scala114
-rw-r--r--src/library/scala/Short.scala114
-rw-r--r--src/library/scala/Unit.scala2
-rw-r--r--src/library/scala/collection/immutable/HashMap.scala11
-rw-r--r--src/library/scala/collection/immutable/HashSet.scala6
-rw-r--r--src/library/scala/collection/parallel/immutable/ParHashMap.scala19
13 files changed, 315 insertions, 304 deletions
diff --git a/src/library/scala/AnyVal.scala b/src/library/scala/AnyVal.scala
index cd2c04dbd8..ed4c5f5948 100644
--- a/src/library/scala/AnyVal.scala
+++ b/src/library/scala/AnyVal.scala
@@ -25,4 +25,7 @@ package scala
* The ''integer types'' include the subrange types as well as [[scala.Int]] and [[scala.Long]].
* The ''floating point types'' are [[scala.Float]] and [[scala.Double]].
*/
-sealed trait AnyVal
+trait AnyVal {
+// disabled for now to make the standard build go through
+// def getClass(): Class[_ <: AnyVal] = ???
+}
diff --git a/src/library/scala/Boolean.scala b/src/library/scala/Boolean.scala
index 0adcde3aba..5078e59d28 100644
--- a/src/library/scala/Boolean.scala
+++ b/src/library/scala/Boolean.scala
@@ -107,7 +107,7 @@ final class Boolean extends AnyVal {
*/
def ^(x: Boolean): Boolean = sys.error("stub")
- def getClass(): Class[Boolean] = sys.error("stub")
+ override def getClass(): Class[Boolean] = sys.error("stub")
}
object Boolean extends AnyValCompanion {
diff --git a/src/library/scala/Byte.scala b/src/library/scala/Byte.scala
index 4923cc9786..beff5ce208 100644
--- a/src/library/scala/Byte.scala
+++ b/src/library/scala/Byte.scala
@@ -30,7 +30,7 @@ final class Byte extends AnyVal {
* @return the bitwise negation of this value
* @example {{{
* ~5 == -6
- * // in binary: ~00000101 ==
+ * // in binary: ~00000101 ==
* // 11111010
* }}}
*/
@@ -60,22 +60,22 @@ final class Byte extends AnyVal {
def <<(x: Long): Int = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
def >>>(x: Int): Int = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
@@ -85,8 +85,8 @@ final class Byte extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -96,8 +96,8 @@ final class Byte extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -281,9 +281,9 @@ final class Byte extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -292,9 +292,9 @@ final class Byte extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -303,9 +303,9 @@ final class Byte extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -314,9 +314,9 @@ final class Byte extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -325,9 +325,9 @@ final class Byte extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -337,9 +337,9 @@ final class Byte extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -348,9 +348,9 @@ final class Byte extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -359,9 +359,9 @@ final class Byte extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -370,9 +370,9 @@ final class Byte extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -381,9 +381,9 @@ final class Byte extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -393,9 +393,9 @@ final class Byte extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -404,9 +404,9 @@ final class Byte extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -415,9 +415,9 @@ final class Byte extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -426,9 +426,9 @@ final class Byte extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -437,9 +437,9 @@ final class Byte extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -590,7 +590,7 @@ final class Byte extends AnyVal {
*/
def %(x: Double): Double = sys.error("stub")
- def getClass(): Class[Byte] = sys.error("stub")
+ override def getClass(): Class[Byte] = sys.error("stub")
}
object Byte extends AnyValCompanion {
diff --git a/src/library/scala/Char.scala b/src/library/scala/Char.scala
index b4e6445899..dade572396 100644
--- a/src/library/scala/Char.scala
+++ b/src/library/scala/Char.scala
@@ -30,7 +30,7 @@ final class Char extends AnyVal {
* @return the bitwise negation of this value
* @example {{{
* ~5 == -6
- * // in binary: ~00000101 ==
+ * // in binary: ~00000101 ==
* // 11111010
* }}}
*/
@@ -60,22 +60,22 @@ final class Char extends AnyVal {
def <<(x: Long): Int = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
def >>>(x: Int): Int = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
@@ -85,8 +85,8 @@ final class Char extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -96,8 +96,8 @@ final class Char extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -281,9 +281,9 @@ final class Char extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -292,9 +292,9 @@ final class Char extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -303,9 +303,9 @@ final class Char extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -314,9 +314,9 @@ final class Char extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -325,9 +325,9 @@ final class Char extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -337,9 +337,9 @@ final class Char extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -348,9 +348,9 @@ final class Char extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -359,9 +359,9 @@ final class Char extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -370,9 +370,9 @@ final class Char extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -381,9 +381,9 @@ final class Char extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -393,9 +393,9 @@ final class Char extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -404,9 +404,9 @@ final class Char extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -415,9 +415,9 @@ final class Char extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -426,9 +426,9 @@ final class Char extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -437,9 +437,9 @@ final class Char extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -590,7 +590,7 @@ final class Char extends AnyVal {
*/
def %(x: Double): Double = sys.error("stub")
- def getClass(): Class[Char] = sys.error("stub")
+ override def getClass(): Class[Char] = sys.error("stub")
}
object Char extends AnyValCompanion {
diff --git a/src/library/scala/Double.scala b/src/library/scala/Double.scala
index 68a1a01299..01414265c4 100644
--- a/src/library/scala/Double.scala
+++ b/src/library/scala/Double.scala
@@ -356,7 +356,7 @@ final class Double extends AnyVal {
*/
def %(x: Double): Double = sys.error("stub")
- def getClass(): Class[Double] = sys.error("stub")
+ override def getClass(): Class[Double] = sys.error("stub")
}
object Double extends AnyValCompanion {
diff --git a/src/library/scala/Float.scala b/src/library/scala/Float.scala
index 709d73d408..ff5b3cb112 100644
--- a/src/library/scala/Float.scala
+++ b/src/library/scala/Float.scala
@@ -356,7 +356,7 @@ final class Float extends AnyVal {
*/
def %(x: Double): Double = sys.error("stub")
- def getClass(): Class[Float] = sys.error("stub")
+ override def getClass(): Class[Float] = sys.error("stub")
}
object Float extends AnyValCompanion {
diff --git a/src/library/scala/Int.scala b/src/library/scala/Int.scala
index 519a0486ac..6b7debf2df 100644
--- a/src/library/scala/Int.scala
+++ b/src/library/scala/Int.scala
@@ -30,7 +30,7 @@ final class Int extends AnyVal {
* @return the bitwise negation of this value
* @example {{{
* ~5 == -6
- * // in binary: ~00000101 ==
+ * // in binary: ~00000101 ==
* // 11111010
* }}}
*/
@@ -60,22 +60,22 @@ final class Int extends AnyVal {
def <<(x: Long): Int = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
def >>>(x: Int): Int = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
@@ -85,8 +85,8 @@ final class Int extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -96,8 +96,8 @@ final class Int extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -281,9 +281,9 @@ final class Int extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -292,9 +292,9 @@ final class Int extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -303,9 +303,9 @@ final class Int extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -314,9 +314,9 @@ final class Int extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -325,9 +325,9 @@ final class Int extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -337,9 +337,9 @@ final class Int extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -348,9 +348,9 @@ final class Int extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -359,9 +359,9 @@ final class Int extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -370,9 +370,9 @@ final class Int extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -381,9 +381,9 @@ final class Int extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -393,9 +393,9 @@ final class Int extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -404,9 +404,9 @@ final class Int extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -415,9 +415,9 @@ final class Int extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -426,9 +426,9 @@ final class Int extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -437,9 +437,9 @@ final class Int extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -590,7 +590,7 @@ final class Int extends AnyVal {
*/
def %(x: Double): Double = sys.error("stub")
- def getClass(): Class[Int] = sys.error("stub")
+ override def getClass(): Class[Int] = sys.error("stub")
}
object Int extends AnyValCompanion {
diff --git a/src/library/scala/Long.scala b/src/library/scala/Long.scala
index 9c7a803f08..e734c92112 100644
--- a/src/library/scala/Long.scala
+++ b/src/library/scala/Long.scala
@@ -30,7 +30,7 @@ final class Long extends AnyVal {
* @return the bitwise negation of this value
* @example {{{
* ~5 == -6
- * // in binary: ~00000101 ==
+ * // in binary: ~00000101 ==
* // 11111010
* }}}
*/
@@ -60,22 +60,22 @@ final class Long extends AnyVal {
def <<(x: Long): Long = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
def >>>(x: Int): Long = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
@@ -85,8 +85,8 @@ final class Long extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -96,8 +96,8 @@ final class Long extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -281,9 +281,9 @@ final class Long extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -292,9 +292,9 @@ final class Long extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -303,9 +303,9 @@ final class Long extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -314,9 +314,9 @@ final class Long extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -325,9 +325,9 @@ final class Long extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -337,9 +337,9 @@ final class Long extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -348,9 +348,9 @@ final class Long extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -359,9 +359,9 @@ final class Long extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -370,9 +370,9 @@ final class Long extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -381,9 +381,9 @@ final class Long extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -393,9 +393,9 @@ final class Long extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -404,9 +404,9 @@ final class Long extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -415,9 +415,9 @@ final class Long extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -426,9 +426,9 @@ final class Long extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -437,9 +437,9 @@ final class Long extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -590,7 +590,7 @@ final class Long extends AnyVal {
*/
def %(x: Double): Double = sys.error("stub")
- def getClass(): Class[Long] = sys.error("stub")
+ override def getClass(): Class[Long] = sys.error("stub")
}
object Long extends AnyValCompanion {
diff --git a/src/library/scala/Short.scala b/src/library/scala/Short.scala
index a9210d3555..98e227d992 100644
--- a/src/library/scala/Short.scala
+++ b/src/library/scala/Short.scala
@@ -30,7 +30,7 @@ final class Short extends AnyVal {
* @return the bitwise negation of this value
* @example {{{
* ~5 == -6
- * // in binary: ~00000101 ==
+ * // in binary: ~00000101 ==
* // 11111010
* }}}
*/
@@ -60,22 +60,22 @@ final class Short extends AnyVal {
def <<(x: Long): Int = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
def >>>(x: Int): Int = sys.error("stub")
/**
* @return this value bit-shifted right by the specified number of bits,
- * filling the new left bits with zeroes.
+ * filling the new left bits with zeroes.
* @example {{{ 21 >>> 3 == 2 // in binary: 010101 >>> 3 == 010 }}}
* @example {{{
- * -21 >>> 3 == 536870909
- * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
+ * -21 >>> 3 == 536870909
+ * // in binary: 11111111 11111111 11111111 11101011 >>> 3 ==
* // 00011111 11111111 11111111 11111101
* }}}
*/
@@ -85,8 +85,8 @@ final class Short extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -96,8 +96,8 @@ final class Short extends AnyVal {
* filling in the right bits with the same value as the left-most bit of this.
* The effect of this is to retain the sign of the value.
* @example {{{
- * -21 >> 3 == -3
- * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
+ * -21 >> 3 == -3
+ * // in binary: 11111111 11111111 11111111 11101011 >> 3 ==
* // 11111111 11111111 11111111 11111101
* }}}
*/
@@ -281,9 +281,9 @@ final class Short extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -292,9 +292,9 @@ final class Short extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -303,9 +303,9 @@ final class Short extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -314,9 +314,9 @@ final class Short extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -325,9 +325,9 @@ final class Short extends AnyVal {
* @return the bitwise OR of this value and x
* @example {{{
* (0xf0 | 0xaa) == 0xfa
- * // in binary: 11110000
- * // | 10101010
- * // --------
+ * // in binary: 11110000
+ * // | 10101010
+ * // --------
* // 11111010
* }}}
*/
@@ -337,9 +337,9 @@ final class Short extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -348,9 +348,9 @@ final class Short extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -359,9 +359,9 @@ final class Short extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -370,9 +370,9 @@ final class Short extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -381,9 +381,9 @@ final class Short extends AnyVal {
* @return the bitwise AND of this value and x
* @example {{{
* (0xf0 & 0xaa) == 0xa0
- * // in binary: 11110000
- * // & 10101010
- * // --------
+ * // in binary: 11110000
+ * // & 10101010
+ * // --------
* // 10100000
* }}}
*/
@@ -393,9 +393,9 @@ final class Short extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -404,9 +404,9 @@ final class Short extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -415,9 +415,9 @@ final class Short extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -426,9 +426,9 @@ final class Short extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -437,9 +437,9 @@ final class Short extends AnyVal {
* @return the bitwise XOR of this value and x
* @example {{{
* (0xf0 ^ 0xaa) == 0x5a
- * // in binary: 11110000
- * // ^ 10101010
- * // --------
+ * // in binary: 11110000
+ * // ^ 10101010
+ * // --------
* // 01011010
* }}}
*/
@@ -590,7 +590,7 @@ final class Short extends AnyVal {
*/
def %(x: Double): Double = sys.error("stub")
- def getClass(): Class[Short] = sys.error("stub")
+ override def getClass(): Class[Short] = sys.error("stub")
}
object Short extends AnyValCompanion {
diff --git a/src/library/scala/Unit.scala b/src/library/scala/Unit.scala
index 57970b021b..f6ed0121ab 100644
--- a/src/library/scala/Unit.scala
+++ b/src/library/scala/Unit.scala
@@ -17,7 +17,7 @@ package scala
* method which is declared `void`.
*/
final class Unit extends AnyVal {
- def getClass(): Class[Unit] = sys.error("stub")
+ override def getClass(): Class[Unit] = sys.error("stub")
}
object Unit extends AnyValCompanion {
diff --git a/src/library/scala/collection/immutable/HashMap.scala b/src/library/scala/collection/immutable/HashMap.scala
index 55ce8fa822..9cde20f1df 100644
--- a/src/library/scala/collection/immutable/HashMap.scala
+++ b/src/library/scala/collection/immutable/HashMap.scala
@@ -111,7 +111,7 @@ object HashMap extends ImmutableMapFactory[HashMap] with BitOperations.Int {
// TODO: add HashMap2, HashMap3, ...
- class HashMap1[A,+B](private[HashMap] var key: A, private[HashMap] var hash: Int, private[collection] var value: (B @uV), private[collection] var kv: (A,B @uV)) extends HashMap[A,B] {
+ class HashMap1[A,+B](private[collection] val key: A, private[collection] val hash: Int, private[collection] val value: (B @uV), private[collection] var kv: (A,B @uV)) extends HashMap[A,B] {
override def size = 1
private[collection] def getKey = key
@@ -176,13 +176,14 @@ object HashMap extends ImmutableMapFactory[HashMap] with BitOperations.Int {
override def iterator: Iterator[(A,B)] = Iterator(ensurePair)
override def foreach[U](f: ((A, B)) => U): Unit = f(ensurePair)
+ // this method may be called multiple times in a multithreaded environment, but that's ok
private[HashMap] def ensurePair: (A,B) = if (kv ne null) kv else { kv = (key, value); kv }
protected override def merge0[B1 >: B](that: HashMap[A, B1], level: Int, merger: Merger[B1]): HashMap[A, B1] = {
that.updated0(key, hash, level, value, kv, merger)
}
}
- private[collection] class HashMapCollision1[A, +B](private[HashMap] var hash: Int, var kvs: ListMap[A, B @uV])
+ private[collection] class HashMapCollision1[A, +B](private[collection] val hash: Int, val kvs: ListMap[A, B @uV])
extends HashMap[A, B @uV] {
override def size = kvs.size
@@ -227,9 +228,9 @@ object HashMap extends ImmutableMapFactory[HashMap] with BitOperations.Int {
}
class HashTrieMap[A, +B](
- private[HashMap] var bitmap: Int,
- private[collection] var elems: Array[HashMap[A, B @uV]],
- private[HashMap] var size0: Int
+ private[collection] val bitmap: Int,
+ private[collection] val elems: Array[HashMap[A, B @uV]],
+ private[collection] val size0: Int
) extends HashMap[A, B @uV] {
/*
diff --git a/src/library/scala/collection/immutable/HashSet.scala b/src/library/scala/collection/immutable/HashSet.scala
index 8cb19d4f31..79d2fb71cc 100644
--- a/src/library/scala/collection/immutable/HashSet.scala
+++ b/src/library/scala/collection/immutable/HashSet.scala
@@ -105,7 +105,7 @@ object HashSet extends ImmutableSetFactory[HashSet] {
// TODO: add HashSet2, HashSet3, ...
- class HashSet1[A](private[HashSet] var key: A, private[HashSet] var hash: Int) extends HashSet[A] {
+ class HashSet1[A](private[HashSet] val key: A, private[HashSet] val hash: Int) extends HashSet[A] {
override def size = 1
override def get0(key: A, hash: Int, level: Int): Boolean =
@@ -131,7 +131,7 @@ object HashSet extends ImmutableSetFactory[HashSet] {
override def foreach[U](f: A => U): Unit = f(key)
}
- private[immutable] class HashSetCollision1[A](private[HashSet] var hash: Int, var ks: ListSet[A])
+ private[immutable] class HashSetCollision1[A](private[HashSet] val hash: Int, val ks: ListSet[A])
extends HashSet[A] {
override def size = ks.size
@@ -178,7 +178,7 @@ object HashSet extends ImmutableSetFactory[HashSet] {
}
- class HashTrieSet[A](private var bitmap: Int, private[collection] var elems: Array[HashSet[A]], private var size0: Int)
+ class HashTrieSet[A](private val bitmap: Int, private[collection] val elems: Array[HashSet[A]], private val size0: Int)
extends HashSet[A] {
override def size = size0
diff --git a/src/library/scala/collection/parallel/immutable/ParHashMap.scala b/src/library/scala/collection/parallel/immutable/ParHashMap.scala
index 1fec522a93..e785932933 100644
--- a/src/library/scala/collection/parallel/immutable/ParHashMap.scala
+++ b/src/library/scala/collection/parallel/immutable/ParHashMap.scala
@@ -304,14 +304,21 @@ extends collection.parallel.BucketCombiner[(K, V), ParHashMap[K, V], (K, V), Has
evaluateCombiners(trie)
trie.asInstanceOf[HashMap[K, Repr]]
}
- private def evaluateCombiners(trie: HashMap[K, Combiner[V, Repr]]): Unit = trie match {
+ private def evaluateCombiners(trie: HashMap[K, Combiner[V, Repr]]): HashMap[K, Repr] = trie match {
case hm1: HashMap.HashMap1[_, _] =>
- hm1.asInstanceOf[HashMap.HashMap1[K, Repr]].value = hm1.value.result
- hm1.kv = null
+ val evaledvalue = hm1.value.result
+ new HashMap.HashMap1[K, Repr](hm1.key, hm1.hash, evaledvalue, null)
case hmc: HashMap.HashMapCollision1[_, _] =>
- hmc.asInstanceOf[HashMap.HashMapCollision1[K, Repr]].kvs = hmc.kvs map { p => (p._1, p._2.result) }
- case htm: HashMap.HashTrieMap[_, _] =>
- for (hm <- htm.elems) evaluateCombiners(hm)
+ val evaledkvs = hmc.kvs map { p => (p._1, p._2.result) }
+ new HashMap.HashMapCollision1[K, Repr](hmc.hash, evaledkvs)
+ case htm: HashMap.HashTrieMap[k, v] =>
+ var i = 0
+ while (i < htm.elems.length) {
+ htm.elems(i) = evaluateCombiners(htm.elems(i)).asInstanceOf[HashMap[k, v]]
+ i += 1
+ }
+ htm.asInstanceOf[HashMap[K, Repr]]
+ case empty => empty.asInstanceOf[HashMap[K, Repr]]
}
def split = {
val fp = howmany / 2