Skip to content

Commit 06804a3

Browse files
committed
Refine detection idiom and type traits
- Add nonesuch sentinel type; use it as default in detected_or instead of void, making "not detected" cases unambiguous - Rename returned_type -> invoke_result, resolve_view_t -> pipe_result to follow STL naming conventions - Make get_iterator_t and get_reference_t safe via detected_or<nonesuch> instead of hard decltype aliases, preventing hard errors in SFINAE contexts when T is not a range/iterator - Replace is_input_iterator_expr void_t pattern with is_detected_exact checks enforcing that pre-increment returns T& and post-increment returns T - Replace bidirectional_iterator_extra_expr with is_detected_exact checks for pre/post decrement return types - Add is_detected_exact comment and normalize its template formatting - Strengthen is_sentinel_for to also require I satisfies is_input_iterator
1 parent cd18695 commit 06804a3

1 file changed

Lines changed: 179 additions & 195 deletions

File tree

0 commit comments

Comments
 (0)