| 82 | } |
| 83 | |
| 84 | TWideToken ExtractWideTokenRange(const TWideToken& tok, size_t start, size_t end) { |
| 85 | Y_ASSERT(start < tok.SubTokens.size()); |
| 86 | Y_ASSERT(end < tok.SubTokens.size()); |
| 87 | |
| 88 | TWideToken newToken; |
| 89 | const size_t offset = GetSubTokenOffset(tok, start); |
| 90 | newToken.Token = tok.Token + offset; |
| 91 | newToken.Leng = tok.SubTokens[end].EndPos() + tok.SubTokens[end].SuffixLen - offset; |
| 92 | for (size_t j = start; j <= end; ++j) { |
| 93 | newToken.SubTokens.push_back(tok.SubTokens[j]); |
| 94 | newToken.SubTokens.back().Pos -= offset; |
| 95 | } |
| 96 | return newToken; |
| 97 | } |
nothing calls this directly
no test coverage detected