1 #pragma once 2 3 #include <phosphor-logging/lg2/level.hpp> 4 5 #include <cstddef> 6 #include <source_location> 7 8 namespace lg2::details 9 { 10 11 /** Low-level function that actually performs the logging. 12 * 13 * This is a variadic argument function (std::va_list) where the variadic 14 * arguments are a set of 3: { header, flags, value }. 15 * 16 * The argument set is finalized with a 'nullptr' valued header. 17 * 18 * @param[in] level - The logging level to use. 19 * @param[in] source_location - The original source location of the upper-level 20 * log call. 21 * @param[in] char* - The primary message to log. 22 */ 23 void do_log(level, const std::source_location&, const char*, ...); 24 25 } // namespace lg2::details 26