atlist-rs

Crates.ioatlist-rs
lib.rsatlist-rs
version0.2.1
sourcesrc
created_at2021-02-26 07:07:05.830538
updated_at2021-03-06 10:57:57.356008
descriptionA LinkedList which is allowed to insert/remove element by immutable iterator.Adding, removing and moving the elements within the list or across several lists does not invalidate the iterators or references. An iterator is invalidated only when the corresponding element is deleted.
homepagehttps://github.com/atframework/atlist-rs
repositoryhttps://github.com/atframework/libatbus-rs
max_upload_size
id360803
size81,189
OWenT (owt5008137)

documentation

https://docs.rs/atlist-rs

README

atlist

github action badge codecov badge crates.io badge docs.rs badge license badge

Documentation

A LinkedList in which the liftime of iterator is independent from LinkedList.So it's allowed to store iterator into anywhere and insert/remove element by iterator at any time.

Adding, removing and moving a iterator does not invalidate other iterators or references. An iterator is invalidated only when the corresponding element is deleted.

We use core::cell::RefCell and std::sync::Arc to manange lifetime of real data entry, so it's slightly slower than std::collections::LinkedList .

Commit count: 40

cargo fmt