Crates.io | associative_positional_list |
lib.rs | associative_positional_list |
version | 0.1.3 |
source | src |
created_at | 2023-02-04 18:07:52.446725 |
updated_at | 2023-04-08 23:25:43.087872 |
description | AssociativePositionalList is a list-like container in which each value is associated with an index, but unlike other list containers, the index for a value can be determined efficiently. |
homepage | https://www.jwhitham.org/ |
repository | |
max_upload_size | |
id | 776533 |
size | 48,279 |
AssociativePositionalList is a positional
container in which each value is associated with an index,
starting at 0 for the first element. Values can be insert
ed
and remove
d at any index (with logarithmic time complexity).
The value at any index can be accessed with get
. But
unlike other list containers such as Vec
, the association
between index and value is reversible, and the index
for a value may be determined using find
.
Items in AssociativePositionalList must be unique so that
find
is unambiguous. They must also be Clone
able and Hash
able.
This crate was developed by a relative newcomer to Rust as part of a learning exercise. It may not be very efficient. Some of the interfaces you may expect as part of a list container (or a set) are not present.
Aside from the tests within the crate source code, a complete usage example can be found here.