Expand description
Bit-Addressable Memory Regions
This module defines the BitSlice
region, which forms the primary export item
of the crate. It is a region of memory that addresses each bit individually, and
is analogous to the slice language item. See BitSlice
’s documentation for
information on its use.
The other data structures bitvec
offers are built atop BitSlice
, and follow
the development conventions outlined in this module. Because the API surface for
bitvec
data structures is so large, they are broken into a number of common
submodules:
slice
defines theBitSlice
data structure, its inherent methods that are original tobitvec
, as well as some free functions.slice::api
defines ports of theimpl<T> [T]
inherent blocks fromcore::slice
.slice::iter
contains all the logic used to iterate acrossBitSlices
, including ports ofcore::slice
iterators.slice::ops
contains implementations ofcore::ops
traits that power operator sigils.slice::traits
contains all the other trait implementations.slice::tests
contains unit tests forBitSlice
inherent methods.
Additionally, slice
has a submodule unique to it: specialization
contains
override functions that provide faster behavior on known BitOrder
implementations. Since the other data structures Deref
to it, they do not need
to implement bit-order specializations of their own.
All ports of language or standard-library items have an ## Original
section in
their documentation that links to the item they are porting, and possibly an
## API Differences
that explains why the bitvec
item is not a drop-in
replacement.
Structs
BitSlice
that yields bool
directly.Traits
Functions
Type Definitions
BitSlice
that yields &bool
directly.