30template<
typename Logger,
typename Message_Builder >
34 try { logger.trace( std::forward<Message_Builder>(builder) ); }
38template<
typename Message_Builder >
43template<
typename Logger,
typename Message_Builder >
47 try { logger.info( std::forward<Message_Builder>(builder) ); }
51template<
typename Message_Builder >
56template<
typename Logger,
typename Message_Builder >
60 try { logger.warn( std::forward<Message_Builder>(builder) ); }
64template<
typename Message_Builder >
69template<
typename Logger,
typename Message_Builder >
73 try { logger.error( std::forward<Message_Builder>(builder) ); }
77template<
typename Message_Builder >
99 const char * block_description,
101 Lambda && lambda )
noexcept
107 catch(
const std::exception & x )
110 return fmt::format(
"an exception in '{}': {}",
111 block_description, x.what() );
117 return fmt::format(
"an unknown exception in '{}'",
132template<
typename Lambda >
A special wrapper around fmtlib include files.
void suppress_exceptions(Logger &&logger, const char *block_description, Lambda &&lambda) noexcept
Helper function for execution a block of code with suppression of any exceptions raised inside that b...
void log_info_noexcept(Logger &&logger, Message_Builder &&builder) noexcept
void log_error_noexcept(Logger &&logger, Message_Builder &&builder) noexcept
void log_warn_noexcept(Logger &&logger, Message_Builder &&builder) noexcept
void suppress_exceptions_quietly(Lambda &&lambda) noexcept
Helper function for execution a block of code with suppression of any exceptions raised inside that b...
void log_trace_noexcept(Logger &&logger, Message_Builder &&builder) noexcept