abhishek593 opened a new pull request, #49599:
URL: https://github.com/apache/arrow/pull/49599

   ### Rationale for this change
   
   We can replace the SFINAE-based enable_if_* patterns with C++20 concepts. 
This gives us better compiler diagnostics, cleaner code, and faster compile 
times.
   
   ### What changes are included in this PR?
   
   Note: I have broken down the migration into several commits so that each 
commit can be independently reviewed.
   
   - Defined equivalent arrow concepts in type_traits.h that wrap existing 
is_*_type traits.
   - Migrated raw std::enable_if / enable_if_t<std::is_*> patterns to use 
standard <concepts> and requires.
   
   ### Are these changes tested?
   
   Yes. No new tests needed since this is a pure refactor; the concept 
constraints are semantically equivalent to the old enable_if guards.
   
   ### Are there any user-facing changes?
   
   No functional changes. Template error messages from the compiler will be 
more readable on type mismatches. The old enable_if_* aliases remain available, 
and can be cleaned up in a follow-up PR.


-- 
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]

Reply via email to