static void normalizeLines(Strings& in, StringsSet& out, bool sortWords, bool ignoreBlankLines, char wordsep = ' ') { Strings::iterator begin = in.begin(), end = in.end(), i = begin, o = begin; for (; i != end; ++i) { std::string& line = *i; normalizeLine(line, sortWords, wordsep); bool empty = ignoreBlankLines && line.empty(); if (!empty) { out.insert(line); if (i != o) *o = std::move(*i); ++o; } } in.erase(o, end); }