kotlinx.collections.immutable icon indicating copy to clipboard operation
kotlinx.collections.immutable copied to clipboard

Immutable persistent collections for Kotlin

Results 68 kotlinx.collections.immutable issues
Sort by recently updated
recently updated
newest added
trafficstars

`toPersistentSet` and `toPersistentMap` now working in a similar way as `toPersistentList` The contract in the KDoc was not fulfilled as it says for `toPersistentSet`: > If the receiver is already...

I have a few situations where I want to enforce that my map is ordered, say for a list of settings profiles that are keyed by name, but also should...

request
needs discussion

It's unclear to me whether old state gets trapped in these persistent collections and maintain strong references that prevent garbage collection. For example if I have `persistentMap().put("foo", GiantObject()).put("foo", GiantObject(2))`, does...

doc

Currently blocked by https://github.com/Kotlin/kotlinx.html/issues/81

Persistent ordered set can be implemented with a persistent hash set + some persistent list that keeps insertion order. Unfortunately the current persistent vector implementation doesn't suit well as such...

enhancement

Benchmark parameters adjustment and benchmark result files will be removed before merging. Introducing `CollisionTrieNode` for collision nodes (polymorphism approach) adds significant performance losses, see hashSet regressions: https://teamcity.jetbrains.com/viewLog.html?buildId=2469110&buildTypeId=KotlinTools_KotlinxCollectionsImmutable_BenchmarkHashIterations&tab=artifacts#%2FbenchmarkResults Thus, collision nodes...

`immutable*Of(…)` functions shouldn't be deprecated. They should return `Immutable*` instead of `Persistent*`. Currently, e.g.: ``` val x = immutableSetOf(1, 2, 3) val y: ImmutableSet = immutableSetOf(1, 2, 3) // x...

Iterable.intersect(other: Iterable) takes a very long time to complete when called with a PersistentList as a parameter. Same function works faster with other iterables like List and Set. It is...