6 releases (3 breaking)
0.4.0 | May 7, 2022 |
---|---|
0.3.0 | Aug 28, 2021 |
0.2.0 | Jul 29, 2021 |
0.1.2 | Jul 18, 2021 |
#1762 in Rust patterns
Used in singleton-cell
16KB
174 lines
This library provides simple unsafe traits for types with global uniqueness properties, as well as the Erased class for proofs. This crate does not provide implementation strategies, but does provide several examples of valid implementers.
Primarily, it is intended to be used for ghost proofs, in which ownership of a value of particular type is sufficient in order for other safety conditions.
The type Erased<T>
and the trait Exists<T>
are additionally provided as zero-sized
proofs of ownership of a type (including references) when existence is enough for safety.