/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
library/cpp/messagebus/test/perftest/simple_proto.cpp
22 строки
640 B
ilnurkh
Y_VERIFY->Y_ABORT_UNLESS at ^l
10 окт 2023, 00:46
10 окт 2023, 00:46
74b41fa
Код
Авторство
О чём код?
#include "simple_proto.h" #include <util/generic/cast.h> #include <typeinfo> using namespace NBus; void TSimpleProtocol::Serialize(const TBusMessage* mess, TBuffer& data) { Y_ABORT_UNLESS(typeid(TSimpleMessage) == typeid(*mess)); const TSimpleMessage* typed = static_cast<const TSimpleMessage*>(mess); data.Append((const char*)&typed->Payload, 4); } TAutoPtr<TBusMessage> TSimpleProtocol::Deserialize(ui16, TArrayRef<const char> payload) { if (payload.size() != 4) { return nullptr; } TAutoPtr<TSimpleMessage> r(new TSimpleMessage); memcpy(&r->Payload, payload.data(), 4); return r.Release(); }