[libc++] Implement ranges::starts_with
Looks pretty good already. Please make sure the CI is green.
You have to #include <__config>.
Please update the nodiscard_extension tests!
I think we should just forward this for ranges::equal (for random access ranges) or ranges::mismatch (otherwise) to grab any optimizations that are done there.
This isn't a relevant flag anymore.
Looks like clang-format does weird things again. Please update the formatting.
This can be simplified now. See ranges.copy.pass.cpp for an example.
We have a few robust_against_footests for this and other things. Please make sure you update them.
yes, I used ranges::mismatch directly before but the comparators and projections will be copied, which fail ranges_robust_against_copying_comparators.pass.cpp and ranges_robust_against_copying_projections.pass.cpp
LGTM % comments with green CI.
Would you be interested in optimizing random access iterators? If not, I can also do that in a follow-up patch.
You can enable and disable clang-format with // clang-format off/on.
Please use two spaces per indentation level.