17#ifndef TOOLBOX_UTIL_TOKENISER_HPP 
   18#define TOOLBOX_UTIL_TOKENISER_HPP 
   25inline namespace util {
 
   26using sv = std::string_view;
 
   50        j_ = std::find_first_of(i_, buf_.cend(), delims_.cbegin(), delims_.cend());
 
 
   60        return buf_.substr(i_ - buf_.cbegin(), j_ - i_);
 
 
   70        if (j_ != buf_.cend()) {
 
   72            j_ = std::find_first_of(i_, buf_.cend(), delims_.cbegin(), delims_.cend());
 
 
   79    std::string_view buf_;
 
   80    std::string_view delims_;
 
   82    std::string_view::const_iterator i_, j_;
 
 
   85template <
typename FnT>
 
   89    while (
lines.has_delim()) {
 
   93    return lines.consumed();
 
 
   96template <std::
size_t N>
 
   97using Row = std::array<std::string_view, N>;
 
   99template <std::
size_t N>