log_msg.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // Copyright(c) 2015-present, Gabi Melman & spdlog contributors.
  2. // Distributed under the MIT License (http://opensource.org/licenses/MIT)
  3. #pragma once
  4. #include <spdlog/common.h>
  5. #include <string>
  6. namespace spdlog {
  7. namespace details {
  8. struct SPDLOG_API log_msg {
  9. log_msg() = default;
  10. log_msg(log_clock::time_point log_time,
  11. source_loc loc,
  12. string_view_t logger_name,
  13. level::level_enum lvl,
  14. string_view_t msg);
  15. log_msg(source_loc loc, string_view_t logger_name, level::level_enum lvl, string_view_t msg);
  16. log_msg(string_view_t logger_name, level::level_enum lvl, string_view_t msg);
  17. log_msg(const log_msg &other) = default;
  18. log_msg &operator=(const log_msg &other) = default;
  19. string_view_t logger_name;
  20. level::level_enum level{level::off};
  21. log_clock::time_point time;
  22. size_t thread_id{0};
  23. // wrapping the formatted text with color (updated by pattern_formatter).
  24. mutable size_t color_range_start{0};
  25. mutable size_t color_range_end{0};
  26. source_loc source;
  27. string_view_t payload;
  28. };
  29. } // namespace details
  30. } // namespace spdlog
  31. #ifdef SPDLOG_HEADER_ONLY
  32. #include "log_msg-inl.h"
  33. #endif