summaryrefslogtreecommitdiffstats
path: root/main.cpp
diff options
context:
space:
mode:
authorMarkus Mittendrein <git@maxmitti.tk>2019-07-21 00:04:29 +0200
committerMarkus Mittendrein <git@maxmitti.tk>2019-07-21 00:09:09 +0200
commit17f1b653c38a2f9478aaf9d6d762d0c8dd9e6f6f (patch)
treea687ffe513a430a9733d2b1d8f690f2a6d24e0d5 /main.cpp
parent14d7e7275eb54efdfe59ba3ce3b53634286c3d05 (diff)
downloadcxxformat-17f1b653c38a2f9478aaf9d6d762d0c8dd9e6f6f.tar.gz
cxxformat-17f1b653c38a2f9478aaf9d6d762d0c8dd9e6f6f.zip
Simplify similar specializations of AutoConversion and FormatConvert using base structs
Diffstat (limited to 'main.cpp')
-rw-r--r--main.cpp18
1 files changed, 3 insertions, 15 deletions
diff --git a/main.cpp b/main.cpp
index 7a0ccd0..d7fb862 100644
--- a/main.cpp
+++ b/main.cpp
@@ -28,29 +28,17 @@ struct format::FormatConvert<std::string, T[N], std::enable_if_t<!std::is_same_v
template<size_t N, typename T>
struct format::FormatConvert<std::string, std::array<T, N>>
{
- static std::string convert(const std::array<T, N>& from)
+ static std::string convert(const std::array<T, N> &from)
{
return format::FormatConvert<std::string, T[N]>::convert(from.data());
}
};
template<size_t N, typename T>
-struct format::AutoConversion<std::array<T, N>>
-{
- static std::string conversion(const std::array<T, N>&)
- {
- return "s";
- }
-};
+struct format::AutoConversion<std::array<T, N>> : format::SimpleAutoConversion<'s', const std::array<T, N> &> {};
template<size_t N, typename T>
-struct format::AutoConversion<T[N], std::enable_if_t<!std::is_same_v<format::detail::remove_cvref_t<T>, char>>>
-{
- static std::string conversion(const T(&)[N])
- {
- return "s";
- }
-};
+struct format::AutoConversion<T[N], std::enable_if_t<!std::is_same_v<format::detail::remove_cvref_t<T>, char>>> : format::SimpleAutoConversion<'s', const T(&)[N]> {};
int main(int argc, char *argv[])
{