3 #include <yuni/core/string.h> 4 #include <yuni/core/noncopyable.h> 5 #include <yuni/thread/mutex.h> 12 namespace ny {
struct Atom; }
19 struct Message final: Yuni::NonCopyable<Message> {
27 void appendEntry(
const std::shared_ptr<Message>&
message);
31 bool isClassifiedAsError()
const {
32 return static_cast<uint
>(
level) > static_cast<uint>(Level::warning);
38 Level level = Level::error;
47 std::vector<std::shared_ptr<Message>>
entries;
80 mutable yuni::Mutex m_mutex;
YString filename
Current filename.
Definition: message.h:61
void resetFromAtom(const ny::Atom &)
Reset the location from a given atom.
Definition: message.cpp:209
Level level
Error level.
Definition: message.h:38
YString prefix
prefix to highlight
Definition: message.h:42
uint offset
Current offset (1-based, otherwise disabled)
Definition: message.h:68
uint line
Current line (1-based, otherwise disabled)
Definition: message.h:66
bool hasErrors
Flag to remember if some errors or warning have occured or not.
Definition: message.h:79
Yuni::ShortString16 section
Section.
Definition: message.h:40
YString target
Current target.
Definition: message.h:59
std::vector< std::shared_ptr< Message > > entries
Sub-entries.
Definition: message.h:47
Definition of a single class or function.
Definition: atom.h:37
struct ny::Logs::Message::Origin::Location::@34 pos
Current position.
Current filename (if any)
Definition: message.h:54
uint offsetEnd
Current offset (1-based, otherwise disabled)
Definition: message.h:70
Message & createEntry(Level level)
Create a new sub-entry.
Definition: message.cpp:179
YString message
The message itself.
Definition: message.h:44