33 inline std::string prepend(
const std::string& input, 
const std::string& text)
    37     for (
size_t nextPos = input.find(
'\n', pos); nextPos != std::string::npos;
    38          nextPos = input.find(
'\n', pos))
    40         output += text + input.substr(pos, nextPos - pos + 1);
    43     output += text + input.substr(pos, std::string::npos);
 Abstraction layer and common utilities for multi-threaded programming.