Open fabianbs96 opened 11 months ago
Attention: 4 lines
in your changes are missing coverage. Please review.
Comparison is base (
5875f77
) 90.53% compared to head (94dc1fc
) 90.54%.:exclamation: Current head 94dc1fc differs from pull request most recent head 6cd57a2. Consider uploading reports for the commit 6cd57a2 to get more accurate results
Files | Patch % | Lines |
---|---|---|
immer/detail/hamts/champ.hpp | 86.66% | 4 Missing :warning: |
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Currently, the immer
set
,map
, andtable
containers only support a subset of available algorithms; especiallyimmer::all_of
is not supported. That is, because the underlyingchamp
does not implementfor_each_chunk_p
.This PR adds an implementation of
for_each_chunk_p
to the above mentionedchamp
. Should be related to #171.Design considerations:
const node_t *
. However, this has the drawback of potential memory allocation, so the implementation uses an explicit stack (std::array
) that models the required parts of the call-stack fromfor_each_chunk_traversal
.std::invoke
the callback if compiled with C++17 or higher?