-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Implement ranges::istream_view #1334
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
I am slightly confused about the Compiler error. Will investigate after the weekend when I am back at home/office |
|
@StephanTLavavej @CaseyCarter Can you help me understand the horrors of |
|
Try replacing |
CaseyCarter
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nitpicky things: I'll apply these and look at constexpr tests so we can get this merged.
* Include the number of LWG-3489 * Rename test folders from `views_istream` to `istream_view` since there is no `std::ranges::view::istream` * Minimal constexpr test coverage * Remove behavior extension that makes default-constructed `basic_istream_view` model range
|
Thanks a lot for pushing this forward. I had some minor nits ;) |
StephanTLavavej
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me - I'll push changes to fix a few nitpicks.
| using ranges::basic_istream_view; | ||
|
|
||
| // validate type properties | ||
| using R = basic_istream_view<T, char>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I observe that this doesn't test character types other than char, much less custom traits, so there are certain kinds of product bugs that this could miss - however, the product code appears to be correct, so I don't think such test coverage is necessary to proceed. Something to keep in mind for the future, though.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, the thought was that every wild character type would actually only implement the basic_istream functionality not the istream_view itself
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm mostly concerned about typos where we should have said _Elem but instead said char, so it doesn't work with wchar_t.
|
Thanks for implementing this Halloween-themed |
Partially addresses #39