CDT  v4.2.0
инструменты разработчика

◆ EOSLIB_SERIALIZE_DERIVED

#define EOSLIB_SERIALIZE_DERIVED (   TYPE,
  BASE,
  MEMBERS 
)
Макроопределение:
template<typename DataStream> \
friend DataStream& operator << ( DataStream& ds, const TYPE& t ){ \
ds << static_cast<const BASE&>(t); \
return ds BLUEGRASS_META_FOREACH_SEQ( EOSLIB_REFLECT_MEMBER_OP, <<, MEMBERS );\
}\
template<typename DataStream> \
friend DataStream& operator >> ( DataStream& ds, TYPE& t ){ \
ds >> static_cast<BASE&>(t); \
return ds BLUEGRASS_META_FOREACH_SEQ( EOSLIB_REFLECT_MEMBER_OP, >>, MEMBERS );\
}

Задаёт сериализацию и десериализацию для класса, наследующего базовые классы, у которых сериализация и десериализация уже определены

Аргументы
TYPE- Класс, для которого задаются сериализация и десериализация
BASE- Последовательность имён базовых классов: (basea)(baseb)(basec)
MEMBERS- Последовательность имён полей: (field1)(field2)(field3)

См. определение в файле serialize.hpp строка 38