Commit 9d2221b9 authored by Jonathan Müller's avatar Jonathan Müller Committed by Victor Zverovich

Improve error message when formatting unknown types

parent 70a6a4bb
......@@ -340,9 +340,22 @@ class basic_format_arg;
template <typename Context>
class basic_format_args;
template <typename T>
struct no_formatter_error : std::false_type {};
// A formatter for objects of type T.
template <typename T, typename Char = char, typename Enable = void>
struct formatter;
struct formatter {
static_assert(no_formatter_error<T>::value,
"don't know how to format the type, include fmt/ostream.h if it provides "
"an operator<< that should be used");
// The following functions are not defined intentionally.
template <typename ParseContext>
typename ParseContext::iterator parse(ParseContext &);
template <typename FormatContext>
auto format(const T &val, FormatContext &ctx) -> decltype(ctx.out());
};
template <typename T, typename Char, typename Enable = void>
struct convert_to_int {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment