Crates.io | atlist-rs |
lib.rs | atlist-rs |
version | 0.2.1 |
source | src |
created_at | 2021-02-26 07:07:05.830538 |
updated_at | 2021-03-06 10:57:57.356008 |
description | A 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. |
homepage | https://github.com/atframework/atlist-rs |
repository | https://github.com/atframework/libatbus-rs |
max_upload_size | |
id | 360803 |
size | 81,189 |
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
.