| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
This implementation is based on AVL trees.
The current implementation is contributed by Lucien Pereira.
Fixes #4147.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The hash code is further improved by using a special value in the hash sets
called a `seed`. For sequential hash tables, this value depends on the size
of the hash table. It determines the number of bits the hashcode should be
rotated. This ensures that hash tables with different sizes use different
bits to compute the position of the element. This way traversing the elements
of the source hash table will yield them in the order where they had similar
hashcodes (and hence, positions) in the source table, but different ones in
the destination table.
Ideally, in the future we want to be able to have a family of hash functions
and assign a different hash function from that family to each hash table
instance. That would statistically almost completely eliminate the possibility
that the hash table element traversal causes excessive collisions.
I should probably @mention extempore here.
|
|
|
|
|
|
|
| |
Removing the code which has been deprecated since 2.8.0. Contributed by
Simon Ochsenreither, although deleting code is such fun one hesitates to
call it a contribution. Still, we will. Closes SI-4860, no review.
|
|
|
|
|
|
|
|
| |
Revert "Added missing string prefixes for names of map and set
collection classes." and related commits.
No review.
|
|
|
|
|
|
|
|
| |
Another fix for a broken test case involving new set and map string
reps.
No review.
|
|
|
|
|
| |
Fixing tests depending on map and set string representations. No review.
|
|
|
|
|
| |
No review.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Added separate bitmaps for private and transient lazy vals. Closes
#3038, #1573. Review by dragos. I had to fix a couple of initialization
issues that checkinit forced me to do and that weren't a problem before
because the bitmap was serialized even for @transitive. For that I
needed to change the setters in checkinit so that they also update the
bitmap.
|
|
|
|
|
| |
No review.
|
|
|
|
|
| |
As hash codes change, so do the tests - output order for a HashMap is different now. No review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some tweaks to ListSet to make it less pathological in its outlook. We
can see some modest improvements in run time and answer quality via the
enclosed test case:
// with this patch: 2.250s elapsed, assertions pass.
// without this patch: 51.441s elapsed, and it's
a mercy killing: java.lang.StackOverflowError at
scala.collection.immutable.ListSet$Node.contains(ListSet.scala:117) at
scala.collection.immutable.ListSet$Node.contains(ListSet.scala:117)
Closes #3822, review by community.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
- new immutable HashMap implementation based on a hash trie. this is the
first iteration, more optimizations will be added later. - updated test
cases to reflect new ordering of elements - made Map.empty and Set.empty
singletons, deprecating classes Map.EmptyMap and Set.EmptySet Review by
extempore, odersky.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[This patch submitted by ismael juma - commit message his words,
but condensed.]
Fix ticket #1600: Serialization and deserialization of hash-based
collections should not re-use hashCode. The collection is rebuilt
on deserialization - note that this is not compatible with the previous
serialization format. All @SerialVersionUIDs have been reset to 1.
WeakHashMap is not Serializable and should not be so. TreeHashMap has
not been reintegrated yet. OpenHashMap has not been updated. (I think
this collection is flawed and should be removed or reimplemented.)
|
| |
|
|
|
|
|
|
| |
Fixed collections unit test (regression in ListBuffer.apply) and
serialization test.
|
|
|
|
|
|
| |
Moved disabled tests back into their original place. Expect 7 tests to
fail.
|
| |
|
|
|
|
|
|
| |
Modifications to the 10 failing test cases to make them passing test
cases in light of the patch from #1118.
|
|
|
|
|
| |
add serialization test, disabled patmat debug traces
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
case classes now generate objects not factory methods. some small
cleanups for type inference
|
|
|
|
|
| |
Moved tests that are failing, but no present fixes into pending.
|
| |
|
|
|
|
|
|
| |
Fixing the build (toString() issues in the compiler) and the test suite
(toString() issues, spacing issues, and some stringPrefix issues)
|
| |
|
|
|
|
|
|
| |
regenerated TupleN classes so that their toString matches the (...)
tuple syntax update .check files that contained tuple toString output
|
| |
|
| |
|
|
|
|
|
|
| |
Fixed test/files/jvm/serialization.check due to change in
collection.Set.toString()
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Removed old scala tests from new Scala core module.
|
|
|
|
|
| |
slight change, when adding Iterable, inserting a space now
|
| |
|