From 55e5cac33fe48a786e420e29a5474a953362a6b1 Mon Sep 17 00:00:00 2001 From: Mateusz Pusz Date: Mon, 28 Dec 2020 15:46:00 +0100 Subject: [PATCH] refactor: More stream-specific implementation moved to quantity_io.h --- src/include/units/bits/unit_text.h | 11 ----------- src/include/units/quantity.h | 1 - src/include/units/quantity_io.h | 15 +++++++++++++++ 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/src/include/units/bits/unit_text.h b/src/include/units/bits/unit_text.h index 95421d51..208dadef 100644 --- a/src/include/units/bits/unit_text.h +++ b/src/include/units/bits/unit_text.h @@ -26,7 +26,6 @@ #include #include #include -#include namespace units::detail { @@ -178,14 +177,4 @@ constexpr auto unit_text() } } -template -void to_stream(std::basic_ostream& os, const quantity& q) -{ - os << q.count(); - constexpr auto symbol = detail::unit_text(); - if constexpr (symbol.standard().size()) { - os << " " << symbol.standard(); - } -} - } // namespace units::detail diff --git a/src/include/units/quantity.h b/src/include/units/quantity.h index 3fda0cc2..58e3b991 100644 --- a/src/include/units/quantity.h +++ b/src/include/units/quantity.h @@ -30,7 +30,6 @@ #include #include #include -#include namespace units { diff --git a/src/include/units/quantity_io.h b/src/include/units/quantity_io.h index beb3edf7..615882eb 100644 --- a/src/include/units/quantity_io.h +++ b/src/include/units/quantity_io.h @@ -25,9 +25,24 @@ #include #include +#include namespace units { +namespace detail { + +template +void to_stream(std::basic_ostream& os, const quantity& q) +{ + os << q.count(); + constexpr auto symbol = detail::unit_text(); + if constexpr (symbol.standard().size()) { + os << " " << symbol.standard(); + } +} + +} // namespace detail + template std::basic_ostream& operator<<(std::basic_ostream& os, const quantity& q) requires requires { os << q.count(); }