2014-05-06 09:11:31 -04:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
namespace c11log
|
|
|
|
{
|
|
|
|
namespace details
|
|
|
|
{
|
|
|
|
struct log_msg
|
|
|
|
{
|
|
|
|
log_msg() = default;
|
2014-05-07 19:23:07 -04:00
|
|
|
log_msg(level::level_enum l):
|
2014-05-09 08:27:06 -04:00
|
|
|
level(l),
|
|
|
|
time(),
|
|
|
|
raw(),
|
|
|
|
formatted() {}
|
|
|
|
|
|
|
|
|
|
|
|
log_msg(const log_msg& other):
|
|
|
|
level(other.level),
|
|
|
|
time(other.time),
|
|
|
|
raw(other.raw),
|
|
|
|
formatted(other.formatted) {}
|
|
|
|
|
|
|
|
log_msg(log_msg&& other)
|
|
|
|
{
|
|
|
|
swap(*this, other);
|
|
|
|
}
|
|
|
|
|
|
|
|
friend void swap(log_msg& l, log_msg& r)
|
|
|
|
{
|
|
|
|
using std::swap;
|
|
|
|
swap(l.level, r.level);
|
|
|
|
swap(l.time, r.time);
|
|
|
|
swap(l.raw, r.raw);
|
|
|
|
swap(l.formatted, r.formatted);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
log_msg& operator=(log_msg other)
|
|
|
|
{
|
|
|
|
swap(*this, other);
|
|
|
|
return *this;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void clear()
|
|
|
|
{
|
|
|
|
raw.clear();
|
|
|
|
formatted.clear();
|
|
|
|
}
|
|
|
|
|
|
|
|
level::level_enum level;
|
|
|
|
log_clock::time_point time;
|
|
|
|
std::string raw;
|
|
|
|
std::string formatted;
|
2014-05-07 19:23:07 -04:00
|
|
|
|
2014-05-06 09:11:31 -04:00
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|