From 1771f565089da78e4456b042ec6ff17447aa836c Mon Sep 17 00:00:00 2001 From: lisyarus Date: Fri, 6 Nov 2020 17:34:57 +0300 Subject: [PATCH] Fix all stream output operators: operator<< might return a different stream type --- libs/geom/include/psemek/geom/interval.hpp | 3 ++- libs/geom/include/psemek/geom/sign.hpp | 7 ++++--- libs/geom/include/psemek/geom/simplex.hpp | 3 ++- libs/log/include/psemek/log/level.hpp | 11 ++++++----- libs/util/include/psemek/util/empty.hpp | 3 ++- libs/util/include/psemek/util/statistics.hpp | 3 ++- 6 files changed, 18 insertions(+), 12 deletions(-) diff --git a/libs/geom/include/psemek/geom/interval.hpp b/libs/geom/include/psemek/geom/interval.hpp index 7e013ba6..3bca9521 100644 --- a/libs/geom/include/psemek/geom/interval.hpp +++ b/libs/geom/include/psemek/geom/interval.hpp @@ -241,7 +241,8 @@ namespace psemek::geom template Stream & operator << (Stream & os, interval const & i) { - return os << '[' << i.min << " .. " << i.max << ']'; + os << '[' << i.min << " .. " << i.max << ']'; + return os; } } diff --git a/libs/geom/include/psemek/geom/sign.hpp b/libs/geom/include/psemek/geom/sign.hpp index 6890c9c5..a5a2dac6 100644 --- a/libs/geom/include/psemek/geom/sign.hpp +++ b/libs/geom/include/psemek/geom/sign.hpp @@ -17,9 +17,10 @@ namespace psemek::geom { switch (s) { - case sign_t::positive: return o << "positive"; - case sign_t::zero: return o << "zero"; - case sign_t::negative: return o << "negative"; + case sign_t::positive: o << "positive"; break; + case sign_t::zero: o << "zero"; break; + case sign_t::negative: o << "negative"; break; + default: o << "(unknown)"; break; } return o; diff --git a/libs/geom/include/psemek/geom/simplex.hpp b/libs/geom/include/psemek/geom/simplex.hpp index 39483864..f485bdd7 100644 --- a/libs/geom/include/psemek/geom/simplex.hpp +++ b/libs/geom/include/psemek/geom/simplex.hpp @@ -40,7 +40,8 @@ namespace psemek::geom os << '(' << s[0]; for (std::size_t i = 1; i <= K; ++i) os << ", " << s[i]; - return os << ')'; + os << ')'; + return os; } } diff --git a/libs/log/include/psemek/log/level.hpp b/libs/log/include/psemek/log/level.hpp index d428a20d..77cabba9 100644 --- a/libs/log/include/psemek/log/level.hpp +++ b/libs/log/include/psemek/log/level.hpp @@ -16,12 +16,13 @@ namespace psemek::log { switch (l) { - case level::debug: return s << "debug"; - case level::info: return s << "info"; - case level::warning: return s << "warning"; - case level::error: return s << "error"; - default: return s << "(unknown)"; + case level::debug: s << "debug"; break; + case level::info: s << "info"; break; + case level::warning: s << "warning"; break; + case level::error: s << "error"; break; + default: s << "(unknown)"; break; } + return s; } } diff --git a/libs/util/include/psemek/util/empty.hpp b/libs/util/include/psemek/util/empty.hpp index b84d4264..324e4d9d 100644 --- a/libs/util/include/psemek/util/empty.hpp +++ b/libs/util/include/psemek/util/empty.hpp @@ -8,7 +8,8 @@ namespace psemek::util template Stream & operator << (Stream & os, empty) { - return os << "empty"; + os << "empty"; + return os; } } diff --git a/libs/util/include/psemek/util/statistics.hpp b/libs/util/include/psemek/util/statistics.hpp index 3f914d46..4e5455db 100644 --- a/libs/util/include/psemek/util/statistics.hpp +++ b/libs/util/include/psemek/util/statistics.hpp @@ -81,7 +81,8 @@ namespace psemek::util template OStream & operator << (OStream & os, statistics const & s) { - return os << "mean = " << s.mean() << ", var = " << s.var() << ", range = [" << s.min() << " .. " << s.max() << "]"; + os << "mean = " << s.mean() << ", var = " << s.var() << ", range = [" << s.min() << " .. " << s.max() << "]"; + return os; } }