| commit | f5e6016ac1c6df655d1ea7096d1ad3f0b3ddbae8 | [log] [tgz] |
|---|---|---|
| author | android-build-team Robot <[email protected]> | Sat May 15 03:07:00 2021 +0000 |
| committer | android-build-team Robot <[email protected]> | Sat May 15 03:07:00 2021 +0000 |
| tree | 374e6263abc26a82e70c06ffcb32122ace1036af | |
| parent | ca2725eb107cfda4c6f7ad9c530dae5057627715 [diff] | |
| parent | 4a33a6760350692e218c052f4f70502a61af370d [diff] |
Snap for 7362794 from 4a33a6760350692e218c052f4f70502a61af370d to sc-v2-release Change-Id: I1efff01a3483142896b06823a31847cb95bc7288
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 an Inline(ArrayVec) or a Heap(Vec). If a TinyVec is Inline and would overflow it automatically transitions to Heap 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