#include "auto_and_range_for.hpp" #include namespace cpp11 { auto double_values(const std::vector& input) -> std::vector { auto result = std::vector{}; result.reserve(input.size()); std::ranges::for_each(input, [&result](const int value) { result.push_back(value * 2); }); return result; } auto join_with_auto(const std::vector& parts) -> std::string { auto result = std::string{}; std::ranges::for_each(parts, [&result](const std::string& part) { result += part; }); return result; } auto count_if_positive(const std::vector& input) -> int { auto count = 0; std::ranges::for_each(input, [&count](const int value) { if (value > 0) ++count; }); return count; } } // namespace cpp11