mirror of
https://github.com/gabime/spdlog.git
synced 2025-09-30 10:29:02 +08:00
added printf syntax support for even faster compilation!
This commit is contained in:
@@ -97,20 +97,6 @@ enum class level
|
||||
off = SPDLITE_LEVEL_OFF
|
||||
};
|
||||
|
||||
struct src_loc
|
||||
{
|
||||
src_loc() = default;
|
||||
src_loc(const char *filename, int line, const char *funcname)
|
||||
: filename(filename)
|
||||
, line(line)
|
||||
, funcname(funcname)
|
||||
{
|
||||
}
|
||||
|
||||
const char *filename = nullptr;
|
||||
int line = 0;
|
||||
const char *funcname = nullptr;
|
||||
};
|
||||
|
||||
class logger
|
||||
{
|
||||
@@ -127,7 +113,7 @@ public:
|
||||
bool should_log(spdlog::lite::level lvl) const noexcept;
|
||||
|
||||
template<typename... Args>
|
||||
void log(const spdlog::lite::src_loc &src, spdlog::lite::level lvl, const char *fmt, const Args &... args)
|
||||
void log(spdlog::lite::level lvl, const char *fmt, const Args &... args)
|
||||
{
|
||||
if (!should_log(lvl))
|
||||
{
|
||||
@@ -135,19 +121,20 @@ public:
|
||||
}
|
||||
fmt::memory_buffer formatted_buf;
|
||||
fmt::format_to(formatted_buf, fmt, args...);
|
||||
log_formatted_(src, lvl, formatted_buf);
|
||||
log_formatted_(lvl, formatted_buf);
|
||||
}
|
||||
|
||||
template<typename... Args>
|
||||
void log(spdlog::lite::level lvl, const char *fmt, const Args &... args)
|
||||
{
|
||||
log(spdlog::lite::src_loc{}, lvl, fmt, args...);
|
||||
}
|
||||
|
||||
// log string view
|
||||
void log(spdlog::lite::level lvl, const string_view_t &sv);
|
||||
void log_printf(spdlog::lite::level lvl, const char* format, va_list args);
|
||||
|
||||
//
|
||||
// trace
|
||||
//
|
||||
void trace(const char *msg)
|
||||
{
|
||||
log_string_view_(spdlog::lite::level::trace, msg);
|
||||
log(spdlog::lite::level::trace, string_view_t(msg));
|
||||
}
|
||||
|
||||
template<typename... Args>
|
||||
@@ -156,10 +143,14 @@ public:
|
||||
log(spdlog::lite::level::trace, fmt, args...);
|
||||
}
|
||||
|
||||
void trace_f(const char *printf_format, ...);
|
||||
|
||||
//
|
||||
// debug
|
||||
//
|
||||
void debug(const char *msg)
|
||||
{
|
||||
log_string_view_(spdlog::lite::level::debug, msg);
|
||||
log(spdlog::lite::level::debug, string_view_t(msg));
|
||||
}
|
||||
|
||||
template<typename... Args>
|
||||
@@ -168,10 +159,14 @@ public:
|
||||
log(spdlog::lite::level::debug, fmt, args...);
|
||||
}
|
||||
|
||||
void debug_f(const char *printf_format, ...);
|
||||
|
||||
//
|
||||
// info
|
||||
//
|
||||
void info(const char *msg)
|
||||
{
|
||||
log_string_view_(spdlog::lite::level::info, msg);
|
||||
log(spdlog::lite::level::info, string_view_t(msg));
|
||||
}
|
||||
|
||||
template<typename... Args>
|
||||
@@ -180,10 +175,14 @@ public:
|
||||
log(spdlog::lite::level::info, fmt, args...);
|
||||
}
|
||||
|
||||
void info_f(const char *printf_format, ...);
|
||||
|
||||
//
|
||||
// warn
|
||||
//
|
||||
void warn(const char *msg)
|
||||
{
|
||||
log_string_view_(spdlog::lite::level::warn, msg);
|
||||
log(spdlog::lite::level::warn, string_view_t(msg));
|
||||
}
|
||||
|
||||
template<typename... Args>
|
||||
@@ -192,22 +191,31 @@ public:
|
||||
log(spdlog::lite::level::warn, fmt, args...);
|
||||
}
|
||||
|
||||
void warn_f(const char *printf_format, ...);
|
||||
|
||||
//
|
||||
// error
|
||||
//
|
||||
void error(const char *msg)
|
||||
{
|
||||
log_string_view_(spdlog::lite::level::err, msg);
|
||||
log(spdlog::lite::level::err, string_view_t(msg));
|
||||
}
|
||||
|
||||
|
||||
template<typename... Args>
|
||||
void error(const char *fmt, const Args &... args)
|
||||
{
|
||||
log(spdlog::lite::level::err, fmt, args...);
|
||||
}
|
||||
|
||||
void error_f(const char *printf_format, ...);
|
||||
|
||||
//
|
||||
// critical
|
||||
//
|
||||
void critical(const char *msg)
|
||||
{
|
||||
log_string_view_(spdlog::lite::level::critical, msg);
|
||||
log(spdlog::lite::level::critical, string_view_t(msg));
|
||||
}
|
||||
|
||||
template<typename... Args>
|
||||
@@ -216,9 +224,18 @@ public:
|
||||
log(spdlog::lite::level::critical, fmt, args...);
|
||||
}
|
||||
|
||||
void critical_f(const char *printf_format, ...);
|
||||
|
||||
//
|
||||
// setters/getters
|
||||
//
|
||||
std::string name() const;
|
||||
void set_level(lite::level level);
|
||||
lite::level get_level() const;
|
||||
|
||||
//
|
||||
// flush
|
||||
//
|
||||
void flush();
|
||||
void flush_on(spdlog::lite::level log_level);
|
||||
spdlog::lite::level flush_level() const;
|
||||
@@ -226,9 +243,8 @@ public:
|
||||
|
||||
protected:
|
||||
std::shared_ptr<spdlog::logger> impl_;
|
||||
void log_formatted_(const spdlog::lite::src_loc &src, spdlog::lite::level lvl, const fmt::memory_buffer &formatted);
|
||||
void log_string_view_(const spdlog::lite::src_loc &src, spdlog::lite::level lvl, const string_view_t &sv);
|
||||
void log_string_view_(spdlog::lite::level lvl, const string_view_t &sv);
|
||||
void log_formatted_(spdlog::lite::level lvl, const fmt::memory_buffer &formatted);
|
||||
|
||||
};
|
||||
|
||||
spdlog::lite::logger &default_logger();
|
||||
|
Reference in New Issue
Block a user