#container #data-structure #bitvec #bitset #no_std

no-std fixedbitset

FixedBitSet is a simple bitset collection

16 releases

0.2.0 Oct 6, 2019
0.1.9 Mar 26, 2018
0.1.8 Sep 12, 2017
0.1.6 Apr 15, 2017
0.0.5 May 31, 2015

#18 in Data structures

Download history 36771/week @ 2019-10-13 36084/week @ 2019-10-20 36033/week @ 2019-10-27 38171/week @ 2019-11-03 36231/week @ 2019-11-10 39994/week @ 2019-11-17 33693/week @ 2019-11-24 41321/week @ 2019-12-01 41512/week @ 2019-12-08 39403/week @ 2019-12-15 18268/week @ 2019-12-22 20452/week @ 2019-12-29 30913/week @ 2020-01-05 40293/week @ 2020-01-12 43125/week @ 2020-01-19

156,272 downloads per month
Used in 521 crates (21 directly)

MIT/Apache

42KB
1K SLoC

fixedbitset

A simple bitset container for Rust

Please read the API documentation here

build_status crates

Recent Changes

  • 0.2.0
    • Add assign operators for the bit operations by @jrraymond
    • Add symmetric_difference, union_with, intersection_with by @jrraymond
    • Add is_subset, is_superset, is_disjoint by @nwn
    • Add .toggle(i) method by @ShiroUsagi-san
    • Add default feature "std" which can be disabled to make the crate not link the std library. By @jonimake and @bluss
    • Require Rust 1.31.
  • 0.1.9
    • Add intersection, union, difference iterators by @jrraymond
    • Add intersection: & and union: | operator implementations by @jrraymond
    • Add Extend and FromIterator implementations (from sequences of bit indices) by @jrraymond
  • 0.1.8
    • Add missing #[inline] on the ones iterator
    • Fix docs for insert_range, set_range
  • 0.1.7
    • Add fast methods .insert_range, .set_range by @kennytm
  • 0.1.6
    • Add iterator .ones() by @mneumann
    • Fix bug with .count_ones() where it would erronously have an out-of-bounds panic for even block endpoints
  • 0.1.5
    • Add method .count_ones(range).
  • 0.1.4
    • Remove an assertion in .copy_bit(from, to) so that it is in line with the documentation. The from bit does not need to be in bounds.
    • Improve .grow() to use Vec::resize internally.
  • 0.1.3
    • Add method .put() to enable a bit and return previous value
  • 0.1.2
    • Add method .copy_bit() (by fuine)
    • impl Default
  • 0.1.1
    • Update documentation URL
  • 0.1.0
    • Add method .grow()

License

Dual-licensed to be compatible with the Rust project.

Licensed under the Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0 or the MIT license http://opensource.org/licenses/MIT, at your option. This file may not be copied, modified, or distributed except according to those terms.

No runtime deps