mirror of
https://github.com/Noratrieb/stuff.git
synced 2026-01-14 16:35:08 +01:00
some docs
This commit is contained in:
parent
14e7443532
commit
2eddd0949d
1 changed files with 12 additions and 1 deletions
13
src/lib.rs
13
src/lib.rs
|
|
@ -9,7 +9,18 @@
|
|||
//! * The trait [`StuffingStrategy`]
|
||||
//! * The trait [`Backend`]
|
||||
//!
|
||||
//!
|
||||
//! [`StuffedPtr`] is the main type of this crate. You it's a type whose size depends on the
|
||||
//! choice of [`Backend`] (defaults to `usize`, `u64` and `u128` are also possible). It can store a
|
||||
//! pointer or some extra data, so you can imagine it being
|
||||
//! ```rust
|
||||
//! enum StuffedPtr<T, E> {
|
||||
//! Ptr(*mut T),
|
||||
//! Extra(E),
|
||||
//! }
|
||||
//! ```
|
||||
//! except that the extra data is bitstuffed into the pointer. You can chose any arbitrary bitstuffing
|
||||
//! depending on the [`StuffingStrategy`], an unsafe trait that governs how the extra data
|
||||
//! (or the pointer itself) will be packed into the backend.
|
||||
|
||||
mod backend;
|
||||
mod strategy;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue