mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-03 08:03:50 +00:00
Avoid log argument evaluation when level is disabled
This commit is contained in:
parent
52accfde80
commit
dd4b72e046
1 changed files with 37 additions and 6 deletions
|
|
@ -102,12 +102,43 @@ private:
|
||||||
void ensureFile();
|
void ensureFile();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Convenience macros
|
// Convenience macros.
|
||||||
#define LOG_DEBUG(...) wowee::core::Logger::getInstance().debug(__VA_ARGS__)
|
// Guard calls at the macro site so variadic arguments are not evaluated
|
||||||
#define LOG_INFO(...) wowee::core::Logger::getInstance().info(__VA_ARGS__)
|
// when the corresponding level is disabled.
|
||||||
#define LOG_WARNING(...) wowee::core::Logger::getInstance().warning(__VA_ARGS__)
|
#define LOG_DEBUG(...) do { \
|
||||||
#define LOG_ERROR(...) wowee::core::Logger::getInstance().error(__VA_ARGS__)
|
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
|
||||||
#define LOG_FATAL(...) wowee::core::Logger::getInstance().fatal(__VA_ARGS__)
|
if (_wowee_logger.shouldLog(wowee::core::LogLevel::DEBUG)) { \
|
||||||
|
_wowee_logger.debug(__VA_ARGS__); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
#define LOG_INFO(...) do { \
|
||||||
|
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
|
||||||
|
if (_wowee_logger.shouldLog(wowee::core::LogLevel::INFO)) { \
|
||||||
|
_wowee_logger.info(__VA_ARGS__); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
#define LOG_WARNING(...) do { \
|
||||||
|
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
|
||||||
|
if (_wowee_logger.shouldLog(wowee::core::LogLevel::WARNING)) { \
|
||||||
|
_wowee_logger.warning(__VA_ARGS__); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
#define LOG_ERROR(...) do { \
|
||||||
|
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
|
||||||
|
if (_wowee_logger.shouldLog(wowee::core::LogLevel::ERROR)) { \
|
||||||
|
_wowee_logger.error(__VA_ARGS__); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
#define LOG_FATAL(...) do { \
|
||||||
|
auto& _wowee_logger = wowee::core::Logger::getInstance(); \
|
||||||
|
if (_wowee_logger.shouldLog(wowee::core::LogLevel::FATAL)) { \
|
||||||
|
_wowee_logger.fatal(__VA_ARGS__); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
} // namespace core
|
} // namespace core
|
||||||
} // namespace wowee
|
} // namespace wowee
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue