-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Implement ranges::istream_view #1334
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 |
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 ;) |
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