boostorg / boostorg/range

Enable use of `boost::adaptors::tokenized` with std::regex

Open
#125 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
45
Forks
104
PR merge metrics
No merged PRs in 30d

Description

A superficial look at https://github.com/boostorg/range/blob/develop/include/boost/range/adaptor/tokenized.hpp shows that the only reason, why there is a hardcoded dependency on boost::regex is because `regex_constants::match_default` is used as a default parameter in some of the functions. Everything else is already templateized to work with anything regex like and should work with std::regex just as well.

If I get the go-ahead from you I'd like to replace those functions with two functions: One that doesn't have the parameter at all and one that takes the parameter as a tempate argument (the functions are already templated anyway). Of course I'll also have to adapt some of the internals, but all changes would be localized to that file (and the tests of course).

This would have two advantages:

- boost::adaptors::tokenized would work with std::regex not only with boost::regex
- It would remove the sole dependency on Boost.Regex from Boost.Range

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.