Releases: orxfun/orx-split-vec
Releases · orxfun/orx-split-vec
Upgrade PseudoDefault dependency
Dual license
Merge pull request #70 from orxfun/dual-license dual-license
SplitVec implements Collection and CollectionMut
3.12.0 Merge pull request #69 from orxfun/SplitVec-implements-Collection-and…
Documentation and benchmark revision
Documentation had been outdated and it has gone through a major revision. Further, the benchmarks are revised and repeated. Finally, upgraded the dependency to new pinned vec version.
Iterator over range
iter_over_range
method is provided.
At one hand, vec.iter_over_range(a..b)
is equivalent to vec.iter().skip(a).take(b - a)
. However, the latter requires a
unnecessary next
calls. Since all pinned vectors provide random access to elements, the objective of iter_over_range
is to directly jump to a
and create an iterator from this point on, and hence, avoiding the unnecessary iterations at the beginning.
Support for Self Referential Collections
The following methods are implemented:
- index_of_ptr
- push_get_ptr
- iter_ptr
- iter_ptr_rev
- contains_ptr
- get_ptr
Crate is converted to no_std
Merge pull request #57 from orxfun/crate-converted-into-no_std crate converted into no_std
Reserve initiated capacity
- ConcurrentSplitVec is simplified by removing the requirement for the atomic number of fragments. This number can be computed by the growth with constant time random access implementations.
reserve_maximum_concurrent_capacity_fill_with
is implemented.- Tests related to reserving maximum capacity are extended.
Concurrent Clone and Fill methods are implemented
clone_with_len
is required for thread safe cloning of data.fill_with
, on the other hand, is required for data structures that needs to be gap-free all the time.- ConcurrentSplitVec is revised, refactored and simplified.
- Clone method is updated to make sure that the clone has the same capacity structure fulfilling the growth's requirements.
- Constant time
fragment_capacity_of
method is required and implemented for constant time growth strategies. - Tests on drop of the concurrent vector are extended.
Index and IndexMut traits are required by PinnedVec
3.5.0 Merge pull request #53 from orxfun/Index-and-IndexMut-traits-are-requ…