5 个版本 (3 个破坏性更新)
0.4.1 | 2022年7月23日 |
---|---|
0.4.0 | 2022年7月22日 |
0.3.0 | 2022年7月22日 |
0.2.0 | 2022年7月21日 |
0.1.0 | 2022年7月20日 |
2731 在 Rust 模式 中
每月下载量:22
13KB
187 行
将数组操作得就像向量一样!
此crate公开了2个trait,允许以类似vec的方式操作数组。
像 ArrayVec 这样的替代品在类似于 [MaybeUninit<T>; N]
的数据结构上操作,并在大小溢出时引发恐慌。这个crate的目的是允许“调整大小”数组。
如果你非常依赖这个crate,可能链表会是一个更好的选择,但这个crate对于一次性操作仍然非常有用,在这些操作中,使用链表会带来更多问题而不是解决方案,或者在不能分配的情况下强制转换数组或设备。
当您需要操作数组但稍后还需要使用固定数组而不是Vec时,此crate工作得非常好并且性能出色。在这种情况下,您避免了1次 malloc()
和3次 memcpy()
的最佳情况场景和n次 malloc()
、3次 memcpy()
和一个条件最坏情况场景。
合并到核心
这个crate依赖于实验性的(不完整的)功能generic-const-exprs,所以Pre-RFC 被推迟直到它不会达到更成熟的状态。