3个稳定版本
1.0.2 | 2021年3月5日 |
---|
#9 in #vec-deque
6KB
90 代码行
此crate对于防止在向集合添加元素时执行昂贵的操作非常有用。它导出单个特质 TryPush
,并为标准库中的 Vec<T>
和 VecDeque<T>
提供了实现。
示例
use try_push::*;
let mut vec = Vec::with_capacity(4);
vec.push(1);
vec.push(2);
vec.push(3);
vec.push(4); // won't reallocate
// vec.push(5); // will reallocate
assert_eq!(vec.try_push(5), Element::NotAdded(5));