| 73 | |
| 74 | template <class I1, class I2> |
| 75 | static inline I1* FastStrChr(I1* str, I2 f) noexcept { |
| 76 | I1* ret = NStringSplitPrivate::Find(str, f); |
| 77 | |
| 78 | if (!ret) { |
| 79 | ret = str + std::char_traits<I1>::length(str); |
| 80 | } |
| 81 | |
| 82 | return ret; |
| 83 | } |
| 84 | |
| 85 | template <class I> |
| 86 | static inline I* FastStrStr(I* str, I* f, size_t l) noexcept { |