felipecrv opened a new pull request, #40281:
URL: https://github.com/apache/arrow/pull/40281
### Rationale for this change
Less template-specialization without any loss in efficiency.
### What changes are included in this PR?
- `ChunkedResolver` tweak
- Explicitly declare copy constructors of `ChunkedResolver`
- at the moment they are necessary because `ChunkedArrayResolver` is
copied in compute kernel code
- Make `ChunkedArrayResolver` re-use `ChunkResolver` via composition
instead of inheritance
- This will allow the `ChunkResolver` API to evolve in ways that might
not make sense if it's a sub-class of `ChunkedArrayResolver`
- Use `std::enable_if` instead of duplicating the `ResolvedChunk`
implementation and template-specializing
- Only specialize `ResolvedChunk::Value` on value-type-specific types
preserving the same type-safety checks (static and runtime)
### Are these changes tested?
Yes, by existing tests.
### Are there any user-facing changes?
No, because these are API are under the internal namespace at the moment
even though there are plans to make it public. These changes are preparation
for that if we end up making them public.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]