mirror of
https://github.com/zerotier/ZeroTierOne.git
synced 2024-12-29 17:28:52 +00:00
.. | ||
benches | ||
src | ||
src-backup | ||
tests | ||
.cargo-checksum.json | ||
Cargo.toml | ||
CHANGELOG.md | ||
compare_benchmarks.py | ||
gen-array-impls.sh | ||
LICENSE-APACHE.md | ||
LICENSE-MIT.md | ||
LICENSE-ZLIB.md | ||
README.md | ||
rustfmt.toml |
tinyvec
A 100% safe crate of vec-like types. #![forbid(unsafe_code)]
Main types are as follows:
ArrayVec
is an array-backed vec-like data structure. It panics on overflow.SliceVec
is the same deal, but using a&mut [T]
.TinyVec
(alloc
feature) is an enum that's either anInline(ArrayVec)
or aHeap(Vec)
. If aTinyVec
isInline
and would overflow it automatically transitions toHeap
and continues whatever it was doing.
To attain this "100% safe code" status there is one compromise: the element type of the vecs must implement Default
.
For more details, please see the docs.rs documentation