Files
Simple-Protocol-Lib/include/sp/protocol/MessagePrinter.h
Persson-dev e8367cd91c
All checks were successful
Linux arm64 / Build (push) Successful in 15s
MessagePrinter (Fixes #2)
2025-03-04 12:01:15 +01:00

20 lines
533 B
C++

#pragma once
#include <ostream>
#include <sp/common/Reflection.h>
#include <sp/protocol/message/MessagePrinterImpl.h>
/**
* \brief Prints a message in a human readable string
*/
template <typename TBase, typename... TOptions>
std::ostream& operator<<(std::ostream& a_Stream, const sp::MessageBase<TBase, TOptions...>& a_Message) {
a_Stream
<< sp::GetClassName(a_Message)
<< sp::details::IdPrinter<TOptions...>::PrintMessageId()
<< "["
<< sp::details::PrintFields(a_Message.GetFields())
<< "]";
return a_Stream;
}