4 releases
0.1.3 | Jan 10, 2021 |
---|---|
0.1.2 | Dec 8, 2020 |
0.1.1 | Dec 8, 2020 |
0.1.0 | Dec 7, 2020 |
#527 in Data structures
1,145,059 downloads per month
Used in 719 crates
(5 directly)
25KB
526 lines
rust-aliasable
Rust library providing basic aliasable (non core::ptr::Unique
) types
Documentation hosted on docs.rs.
aliasable = "0.1"
Why?
Used for escaping noalias
when multiple raw pointers may point to the same
data.
Goals
aliasable
is not designed to provide a full interface for container types,
simply to provide aliasable (non core::ptr::Unique
) alternatives for
dereferencing their owned data. When converting from a unique to an aliasable
alternative, no data referenced is mutated (one-to-one internal representation
aside from the non core::ptr::Unique
pointer).
Usage
use aliasable::vec::AliasableVec;
// Re-exported via `aliasable::vec::UniqueVec`
let unique = Vec::from(&[1, 2, 3][..]);
let aliasable = AliasableVec::from(unique);