#bitmap #growable #array #compact #boolean #boolean-array #shrinkable

可增长位图

一个可增长(和可缩小)的紧凑布尔数组

2个不稳定版本

0.2.0 2020年10月29日
0.1.0 2020年10月25日

#6 in #growable

MIT许可证

36KB
417

CI crates.io crates.io

可增长位图

growable-bitmap是一个Rust包,提供了一个可增长(和可缩小)的紧凑布尔数组,可以对其存储类型进行参数化。

目前,这个包还不被认为是生产就绪的。

待办事项

这个包并不完全具有特性。以下是一些我想要在将其标记为1.0之前添加的特性。

  • BitOr(与另一个GrowableBitMap)。

  • BitOrAssign(与另一个GrowableBitMap)。

  • BitAnd(与另一个GrowableBitMap)。

  • BitAndAssign(与另一个GrowableBitMap)。

  • BitXor(与另一个GrowableBitMap)。

  • BitXorAssign(与另一个GrowableBitMap)。

  • const-generics可用时,可能使用它们作为存储?

  • [Rust 1.48.0+ / 内部文档链接]: 在文档中使用内部文档链接。目前没有链接,因为一旦你了解了内部文档链接的奇妙之处,编写它们就变得痛苦。

使用方法

将此内容添加到您的Cargo.toml

[dependencies]
growable-bitmap = "0.2"

并且,如果您正在使用Rust Edition 2015,请将其添加到您的crate根目录

extern crate growable_bitmap;

类似包

但是位图并不是一个新问题,为什么要有新的包?

这是真的,实际上在crates.io上有两个库已经提供了位图。

  • bitmap:自2016年以来被标记为完整,这意味着它不利用标准库中的新API。如果您想要绝对稳定性,这并不是坏事。
  • bitmaps:仅固定大小的数组,这是growable-bitmap的明确非目标。 bitmapsgrowable-bitmap互为补充,您应该根据您的使用选择正确的一个。

并且我想制作一个位图包,因为我认为位图是一个非常酷的数据结构,我喜欢用Rust来构建东西。

许可证

请查看存储库根目录下的 LICENSE 文件。

无运行时依赖