Merge pull request #403 from Falconne/master

Disambiguate fmt logging methods that are using variadic templates.
This commit is contained in:
Gabi Melman 2017-03-28 00:27:29 +03:00 committed by GitHub
commit 27df6eb4ca
2 changed files with 24 additions and 26 deletions

View File

@ -121,44 +121,42 @@ inline void spdlog::logger::log(level::level_enum lvl, const T& msg)
} }
template <typename... Args> template <typename Arg1, typename... Args>
inline void spdlog::logger::trace(const char* fmt, const Args&... args) inline void spdlog::logger::trace(const char* fmt, const Arg1 &arg1, const Args&... args)
{ {
log(level::trace, fmt, args...); log(level::trace, fmt, arg1, args...);
} }
template <typename... Args> template <typename Arg1, typename... Args>
inline void spdlog::logger::debug(const char* fmt, const Args&... args) inline void spdlog::logger::debug(const char* fmt, const Arg1 &arg1, const Args&... args)
{ {
log(level::debug, fmt, args...); log(level::debug, fmt, arg1, args...);
} }
template <typename... Args> template <typename Arg1, typename... Args>
inline void spdlog::logger::info(const char* fmt, const Args&... args) inline void spdlog::logger::info(const char* fmt, const Arg1 &arg1, const Args&... args)
{ {
log(level::info, fmt, args...); log(level::info, fmt, arg1, args...);
} }
template <typename Arg1, typename... Args>
template <typename... Args> inline void spdlog::logger::warn(const char* fmt, const Arg1 &arg1, const Args&... args)
inline void spdlog::logger::warn(const char* fmt, const Args&... args)
{ {
log(level::warn, fmt, args...); log(level::warn, fmt, arg1, args...);
} }
template <typename... Args> template <typename Arg1, typename... Args>
inline void spdlog::logger::error(const char* fmt, const Args&... args) inline void spdlog::logger::error(const char* fmt, const Arg1 &arg1, const Args&... args)
{ {
log(level::err, fmt, args...); log(level::err, fmt, arg1, args...);
} }
template <typename... Args> template <typename Arg1, typename... Args>
inline void spdlog::logger::critical(const char* fmt, const Args&... args) inline void spdlog::logger::critical(const char* fmt, const Arg1 &arg1, const Args&... args)
{ {
log(level::critical, fmt, args...); log(level::critical, fmt, arg1, args...);
} }
template<typename T> template<typename T>
inline void spdlog::logger::trace(const T& msg) inline void spdlog::logger::trace(const T& msg)
{ {

View File

@ -37,12 +37,12 @@ public:
template <typename... Args> void log(level::level_enum lvl, const char* fmt, const Args&... args); template <typename... Args> void log(level::level_enum lvl, const char* fmt, const Args&... args);
template <typename... Args> void log(level::level_enum lvl, const char* msg); template <typename... Args> void log(level::level_enum lvl, const char* msg);
template <typename... Args> void trace(const char* fmt, const Args&... args); template <typename Arg1, typename... Args> void trace(const char* fmt, const Arg1&, const Args&... args);
template <typename... Args> void debug(const char* fmt, const Args&... args); template <typename Arg1, typename... Args> void debug(const char* fmt, const Arg1&, const Args&... args);
template <typename... Args> void info(const char* fmt, const Args&... args); template <typename Arg1, typename... Args> void info(const char* fmt, const Arg1&, const Args&... args);
template <typename... Args> void warn(const char* fmt, const Args&... args); template <typename Arg1, typename... Args> void warn(const char* fmt, const Arg1&, const Args&... args);
template <typename... Args> void error(const char* fmt, const Args&... args); template <typename Arg1, typename... Args> void error(const char* fmt, const Arg1&, const Args&... args);
template <typename... Args> void critical(const char* fmt, const Args&... args); template <typename Arg1, typename... Args> void critical(const char* fmt, const Arg1&, const Args&... args);
template <typename T> void log(level::level_enum lvl, const T&); template <typename T> void log(level::level_enum lvl, const T&);
template <typename T> void trace(const T&); template <typename T> void trace(const T&);