A Rust library for creating intrusive collections. Currently supports singly-linked and doubly-linked lists, as well as red-black trees.
#[no_std]
.Cursor
-based interface, which allows safe mutation while iterating.For examples and more information, see the documentation (crates.io, master).
Add this to your Cargo.toml
:
toml
[dependencies]
intrusive-collections = "0.8"
and this to your crate root:
```rust
extern crate intrusive_collections; ```
This crate has two Cargo features:
nightly
: Enables nightly-only features: const fn
constructors for collections (Link
constructors are always const fn
)alloc
(enabled by default): Implements IntrusivePointer
for Box
, Rc
and Arc
. This requires libstd
on stable, but only liballoc
if the nightly
feature is enabled.Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.