67 std::string_view message,
70 if (!logger->is_enabled(level)) {
74 return logger->log(level, message, loc);
92 std::string_view message,
93 const std::shared_ptr<interfaces::ILogger>& logger,
95 if (!logger || !logger->is_enabled(level)) {
99 return logger->log(level, message, loc);
116 std::string_view message,
117 const std::string& logger_name,
120 if (!logger->is_enabled(level)) {
124 return logger->log(level, message, loc);
233 std::string_view message,
247 std::string_view message,
261 std::string_view message,
275 std::string_view message,
289 std::string_view message,
303 std::string_view message,
Result type for error handling with member function support.
static Result< T > ok(U &&value)
Create a successful result with value (static factory)
GlobalLoggerRegistry implementation for runtime binding.
std::shared_ptr< ILogger > get_logger()
Get the default logger from the global registry.
log_level
Standard log levels.
VoidResult log_warning(std::string_view message, const source_location &loc=source_location::current())
Log a warning-level message.
bool is_enabled(interfaces::log_level level)
Check if a log level is enabled for the default logger.
VoidResult log_debug(std::string_view message, const source_location &loc=source_location::current())
Log a debug-level message.
VoidResult log_critical(std::string_view message, const source_location &loc=source_location::current())
Log a critical-level message.
VoidResult log_critical_to(const std::string &logger_name, std::string_view message, const source_location &loc=source_location::current())
Log a critical-level message to a named logger.
VoidResult log_warning_to(const std::string &logger_name, std::string_view message, const source_location &loc=source_location::current())
Log a warning-level message to a named logger.
VoidResult log_error(std::string_view message, const source_location &loc=source_location::current())
Log an error-level message.
VoidResult log_trace_to(const std::string &logger_name, std::string_view message, const source_location &loc=source_location::current())
Log a trace-level message to a named logger.
VoidResult log(interfaces::log_level level, std::string_view message, const source_location &loc=source_location::current())
Log a message with the specified level and source location.
VoidResult log_debug_to(const std::string &logger_name, std::string_view message, const source_location &loc=source_location::current())
Log a debug-level message to a named logger.
VoidResult log_info_to(const std::string &logger_name, std::string_view message, const source_location &loc=source_location::current())
Log an info-level message to a named logger.
VoidResult flush()
Flush all buffered log messages for the default logger.
VoidResult log_error_to(const std::string &logger_name, std::string_view message, const source_location &loc=source_location::current())
Log an error-level message to a named logger.
VoidResult log_trace(std::string_view message, const source_location &loc=source_location::current())
Log a trace-level message.
VoidResult log_info(std::string_view message, const source_location &loc=source_location::current())
Log an info-level message.
C++17-compatible source_location implementation.
C++17-compatible source_location implementation using compiler builtins.
static constexpr source_location current(const char *file=__builtin_FILE(), const char *function=__builtin_FUNCTION(), int line=__builtin_LINE()) noexcept