# Persistent Collections Package

List - A persistent list with functional transformations.

Map - A persistent map based on the Compressed Hash Array Mapped Prefix-tree
from 'Optimizing Hash-Array Mapped Tries for Fast and Lean Immutable JVM
Collections' by Michael J. Steindorfer and Jurgen J. Vinju.

Set - A persistent set implemented as a persistent map of an alias of a type
to itself.

Vec - A persistent vector based on the Hash Array Mapped Trie from 'Ideal Hash
Trees' by Phil Bagwell.


## Public Types

* [class Vec](collections-persistent-Vec.md)
* [class VecKeys](collections-persistent-VecKeys.md)
* [class VecValues](collections-persistent-VecValues.md)
* [class VecPairs](collections-persistent-VecPairs.md)
* [type Set](collections-persistent-Set.md)
* [type SetIs](collections-persistent-SetIs.md)
* [class HashSet](collections-persistent-HashSet.md)
* [type Map](collections-persistent-Map.md)
* [type MapIs](collections-persistent-MapIs.md)
* [class HashMap](collections-persistent-HashMap.md)
* [class MapKeys](collections-persistent-MapKeys.md)
* [class MapValues](collections-persistent-MapValues.md)
* [class MapPairs](collections-persistent-MapPairs.md)
* [type List](collections-persistent-List.md)
* [primitive Lists](collections-persistent-Lists.md)
* [primitive Nil](collections-persistent-Nil.md)
* [class Cons](collections-persistent-Cons.md)


## Private Types

* [type _VecSubNodes](collections-persistent-_VecSubNodes.md)
* [class _VecNode](collections-persistent-_VecNode.md)
* [type _MapCollisions](collections-persistent-_MapCollisions.md)
* [type _MapLeaf](collections-persistent-_MapLeaf.md)
* [type _MapEntry](collections-persistent-_MapEntry.md)
* [class _MapNode](collections-persistent-_MapNode.md)
* [primitive _Bits](collections-persistent-_Bits.md)
