diff options
-rw-r--r-- | kgramstats.cpp | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/kgramstats.cpp b/kgramstats.cpp index ac694f3..f788cb1 100644 --- a/kgramstats.cpp +++ b/kgramstats.cpp | |||
@@ -344,21 +344,12 @@ kgramstats::kgramstats(std::string corpus, int maxK) | |||
344 | td.titlecase++; | 344 | td.titlecase++; |
345 | } | 345 | } |
346 | 346 | ||
347 | kgram term_prefix; | 347 | if (std::begin(prefix)->tok.suffix == suffixtype::terminating) |
348 | bool changed = false; | ||
349 | std::transform(prefix.begin(), prefix.end(), std::back_inserter(term_prefix), [&] (query& q) { | ||
350 | if (q.tok.suffix == suffixtype::terminating) | ||
351 | { | ||
352 | changed = true; | ||
353 | |||
354 | return wildcardQuery; | ||
355 | } else { | ||
356 | return q; | ||
357 | } | ||
358 | }); | ||
359 | |||
360 | if (changed) | ||
361 | { | 348 | { |
349 | kgram term_prefix(prefix); | ||
350 | term_prefix.pop_front(); | ||
351 | term_prefix.push_front(wildcardQuery); | ||
352 | |||
362 | if (tstats[term_prefix].count(f) == 0) | 353 | if (tstats[term_prefix].count(f) == 0) |
363 | { | 354 | { |
364 | tstats[term_prefix].emplace(f, f); | 355 | tstats[term_prefix].emplace(f, f); |