master
Daniel Kolesa 2015-07-10 01:17:08 +01:00
parent 80ad58f079
commit 64cfb5b715
1 changed files with 8 additions and 2 deletions

View File

@ -548,6 +548,14 @@ template<typename T> struct ToString<T *> {
}
};
template<> struct ToString<const char *> {
using Argument = const char *;
using Result = String;
String operator()(const char *s) {
return String(s);
}
};
template<> struct ToString<String> {
using Argument = String;
using Result = String;
@ -578,8 +586,6 @@ template<typename T, typename U> struct ToString<Pair<T, U>> {
};
template<typename T> struct ToString<const T>: ToString<T> {};
template<typename T> struct ToString<volatile T>: ToString<T> {};
template<typename T> struct ToString<const volatile T>: ToString<T> {};
template<typename T, typename = decltype(ToString<T>()(declval<T>()))>
String to_string(const T &v) {