[−][src]Crate ppar
Package implement persistent array using a variant of rope data structure.
Fundamentally, it can be viewed as a binary-tree of array-blocks, where
each leaf-node is a block of contiguous item of type T, while intermediate
nodes only hold references to the child nodes, left and right.
To be more precise, intermediate nodes in the tree are organised similar
to rope structure, as a tuple of (weight, left, right) where weight is
the sum of all items present in the leaf-nodes under the left-branch.
Thread Safety
By default Vector<T> is thread safe through Arc. To get better
performance over thread-safety, compile with ppar-rc feature, which uses
Rc instead of Arc, that is, with Rc Send and Sync traits are not
available for Vector<T>.
Alternate libraries:
Macros
| err_at | Short form to compose Error values. |
Structs
| Vector | Persistent array, that can also be used as mutable vector. |
Enums
| Error | Error variants that can be returned by this package's API. |
Type Definitions
| Result | Type alias for Result return type, used by this package. |