Conversation
…and enhance mutability support in tests
2c7b2f3 to
7761bbc
Compare
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #670 +/- ##
==========================================
+ Coverage 88.65% 88.75% +0.09%
==========================================
Files 115 115
Lines 9512 9920 +408
==========================================
+ Hits 8433 8804 +371
- Misses 1079 1116 +37
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
65f3564 to
f363099
Compare
There was a problem hiding this comment.
Pull request overview
This PR adds mutability support to sparrow::run_end_encoded_array, introducing a writable proxy reference type and implementing common container-like mutation operations (index assignment, insert/erase, push/pop, resize/clear), with accompanying test updates and iterator adjustments.
Changes:
- Add
run_end_encoded_referenceand mutable accessors (operator[],front(),back()) plus mutation APIs (insert/erase/push_back/pop_back/resize/clear) forrun_end_encoded_array. - Update run-end-encoded iterators to return a mutable proxy reference for non-const iteration.
- Expand tests for mutation behaviors and add a GCC 11.2 variant-visitation workaround helper for tests.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| test/test_utils.hpp | Adds a GCC 11.2 helper to unwrap nested base_type wrappers for std::visit in tests. |
| test/test_run_end_encoded_array.cpp | Adds mutation-focused subcases (assignment/insert/erase/push_back, and slice-mutation rejection) and updates visitation workaround usage. |
| test/test_builder_run_end_encoded.cpp | Adjusts tests to explicitly exercise const indexing behavior. |
| src/run_end_encoded_array.cpp | Implements the new mutable reference type and mutation logic; refactors run lookup and cache refresh paths. |
| include/sparrow/run_end_encoded_array.hpp | Declares run_end_encoded_reference and the new mutable/mutating API surface. |
| include/sparrow/layout/run_end_encoded_iterator.hpp | Updates iterator reference/value types and mutable dereference behavior. |
| include/sparrow/array_api.hpp | Makes array(arrow_proxy&&) publicly available (was private). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…rrent value retrieval
for more information, see https://pre-commit.ci
…child null count is unknown
…PLACET/sparrow into run_end_encoded_mutability
| /** | ||
| * Constructs an array from an arrow proxy. | ||
| * | ||
| * @param proxy The arrow proxy to construct from. | ||
| */ | ||
| SPARROW_API array(arrow_proxy&& proxy); | ||
|
|
There was a problem hiding this comment.
Moved to public
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…tests for insert and erase operations
for more information, see https://pre-commit.ci
… erasure, and enhance length calculations
…PLACET/sparrow into run_end_encoded_mutability
for more information, see https://pre-commit.ci
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
… equality comparison in run_end_encoded_array
for more information, see https://pre-commit.ci
…PLACET/sparrow into run_end_encoded_mutability
…alls in run_end_encoded_array
for more information, see https://pre-commit.ci
…on in run_end_encoded_array
…PLACET/sparrow into run_end_encoded_mutability
No description provided.