Документация
имеет один простой пример «сериализация-десериализация» с одним пакетом.(я не нашел больше примеров)
если у меня много структур пакета, мне нужно использовать union для этого?или это плохая идея?
как мне нужно проверить пакеты дохода, прежде чем использовать его в программе?
метод Verify - все, что мне нужно для проверки пакета?(структура верна, поля допустимы)
include "body1.fbs";
include "body2.fbs";
union PacketBody {
body1,
body2
}
table Packet {
body: PacketBody
}
root_type Packet;
auto request = Packet::GetPacket(&buf);
auto ver = new flatbuffers::Verifier(buf, len);
if(request->Verify(*ver) {
//good ?
auto body = request->body();
auto body_type = request->body_type();
map[body_type](body);
} else {
//wrong packet
}