4 releases
new 0.1.3 | Dec 30, 2024 |
---|---|
0.1.2 | Jan 20, 2024 |
0.1.1 | Apr 11, 2022 |
0.1.0 | Apr 9, 2022 |
#182 in Data structures
20,496 downloads per month
Used in 113 crates
(2 directly)
170KB
4K
SLoC
imbl-sized-chunks
Various fixed length array data types.
Overview
This crate provides the core building blocks for the immutable data structures
in imbl: a sized array with O(1) amortised double ended push/pop and
smarter insert/remove performance (used by imbl::Vector
and imbl::OrdMap
), and a
fixed size sparse array (used by imbl::HashMap
).
In a nutshell, this crate contains the unsafe bits from imbl, which may or may not be useful to anyone else, and have been split out for ease of auditing.
Warning: undefined behavior
The current implementation of InlineArray
is unsound if the carrier type (T
)
has padding in unfortunate locations; see this issue.
We will be able to fix this once const generics get more powerful.
Documentation
Licence
Copyright 2019 Bodil Stokke
Copyright 2022 Joe Neeman
This software is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
Code of Conduct
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
Acknowledgement
This crate was forked from sized-chunks
,
which is where basicaly all of the work was done.
Dependencies
~140KB