generational-arena
A safe arena allocator that supports deletion without suffering from the ABA problem by using generational indices.
0.2.9
9.6M downloads/mo
#3171 most downloaded on crates.io
fitzgen/generational-arena
What this package is like to depend on
Last release 3 years ago
no release in 18 months
Ships unpredictably
gaps range from 6 weeks to 3.0 years
Nearly every release is documented
notes for 9 of 10 stable releases
1 version withdrawn
withdrawn after publishing
8 years old
11 releases · first in 2018
0 releases in the last 12 months
see the full history below
Release timeline
11 releases · Aug 2018 to May 2023Releases
latest 11-
0.2.922 May 2023 -
0.2.818 May 2020Release notes
Open source →Released 2020-05-18.
- Add a
Defaultimplementation forArena - Add the
insert_withandtry_insert_withmethods toArena. These methods allow creating a value while inserting it, and the function to create the value is given the its id in the arena. For example, this allows a struct that is in an arena to have a member field that is its id within the arena.
- Add a
-
0.2.703 Jan 2020Release notes
Open source →Released 2020-01-03.
- Fixed a bug in
Arena::retainwhere not every element was always considered for retention. See https://github.com/fitzgen/generational-arena/pull/28 for details.
- Fixed a bug in
-
0.2.611 Nov 2019Release notes
Open source →Released 2019-11-11.
- Added
Arena::get_unknown_gen[_mut]methods for the rare cases where you need to get the item andIndexat a given offset within the arena.
- Added
-
0.2.511 Nov 2019 withdrawn -
0.2.404 Nov 2019Release notes
Open source →Released 2019-11-04.
- The
retainmethod now gives mutable references to the arena's items, rather than shared references. This matchesVec::retain. - Upgraded to 2018 edition.
- The
-
0.2.325 Sep 2019Release notes
Open source →Released 2019-09-25.
- Add methods for converting
Indexinto and from its raw parts.
- Add methods for converting
-
0.2.213 Mar 2019 -
0.2.122 Jan 2019Release notes
Open source →Released 2019-01-22.
- Bad indexing into an arena will now panic with a message explaining what happened instead of the generic unwrap panic message.
-
0.2.028 Nov 2018Release notes
Open source →Released 2018-11-28.
- Added support for
serdeserialization and deserialization. Enable the "serde" feature to access it. - Added
clearmethod to empty an arena. - Added a
drainmethod to iterate over items and remove them from the arena at the same time. - Implemented
ExactSizeIterator,DoubleEndedIterator, andFusedIteratorfor our various iterators. This also gave a nice speed up to iteration. - Added the
get2_mutmethod to get two distinct items out of the arena mutably at the same time.
- Added support for
-
0.1.022 Aug 2018Nothing published for this version