| 835 | bool operator!=(end_sentinel_type) const noexcept { return start_ <= end_; } |
| 836 | bool operator==(end_sentinel_type) const noexcept { return start_ > end_; } |
| 837 | bool is_last() const noexcept { return start_ + match_length_ == end_; } |
| 838 | }; |
| 839 | |
| 840 | iterator begin() const noexcept { return {string_view_type(haystack_), matcher_}; } |