add AdcOstreamLogger class (std::basic_stream based multithread-safe
simple logger)
This commit is contained in:
@@ -227,12 +227,25 @@ concept adc_netsession_proto_c =
|
||||
/* LOGGER */
|
||||
|
||||
template <typename LOGGERT>
|
||||
concept adc_logger_c = requires(LOGGERT log) {
|
||||
// logging method must accept at least the single argument - formating string
|
||||
concept adc_logger_c = requires(LOGGERT log, const LOGGERT log_const) {
|
||||
typename LOGGERT::loglevel_t;
|
||||
|
||||
log.setLogLevel(std::declval<typename LOGGERT::loglevel_t>());
|
||||
{ log_const.getLogLevel() } -> std::same_as<typename LOGGERT::loglevel_t>;
|
||||
|
||||
// logging method signature:
|
||||
// void method(std::string_view fmt, traits::formattable auto&& args...)
|
||||
|
||||
|
||||
// logging method must accept at least the single argument - formatting string
|
||||
log.logInfo(std::declval<std::string_view>());
|
||||
// method must be defined at least for std::string as its argument
|
||||
log.logInfo(std::declval<std::string_view>(), std::declval<std::string>());
|
||||
|
||||
log.logWarn(std::declval<std::string_view>());
|
||||
log.logWarn(std::declval<std::string_view>(), std::declval<std::string>());
|
||||
|
||||
log.logError(std::declval<std::string_view>());
|
||||
log.logError(std::declval<std::string_view>(), std::declval<std::string>());
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user