Safer and elgant serial helper macros

This commit is contained in:
Gioacchino Mazzurco 2018-01-25 11:37:16 +01:00
parent 7409de5170
commit 13d4a2c916
8 changed files with 133 additions and 115 deletions

View file

@ -100,24 +100,24 @@ struct RsGroupMetaData : RsSerializable
void serial_process( RsGenericSerializer::SerializeJob j,
RsGenericSerializer::SerializeContext& ctx )
{
RS_PROCESS_SERIAL_MEMBER(mGroupId);
RS_PROCESS_SERIAL_MEMBER(mGroupName);
RS_PROCESS_SERIAL_MEMBER(mGroupFlags);
RS_PROCESS_SERIAL_MEMBER(mSignFlags);
RS_PROCESS_SERIAL_MEMBER(mPublishTs);
RS_PROCESS_SERIAL_MEMBER(mAuthorId);
RS_PROCESS_SERIAL_MEMBER(mCircleId);
RS_PROCESS_SERIAL_MEMBER(mCircleType);
RS_PROCESS_SERIAL_MEMBER(mAuthenFlags);
RS_PROCESS_SERIAL_MEMBER(mParentGrpId);
RS_PROCESS_SERIAL_MEMBER(mSubscribeFlags);
RS_PROCESS_SERIAL_MEMBER(mPop);
RS_PROCESS_SERIAL_MEMBER(mVisibleMsgCount);
RS_PROCESS_SERIAL_MEMBER(mLastPost);
RS_PROCESS_SERIAL_MEMBER(mGroupStatus);
RS_PROCESS_SERIAL_MEMBER(mServiceString);
RS_PROCESS_SERIAL_MEMBER(mOriginator);
RS_PROCESS_SERIAL_MEMBER(mInternalCircle);
RS_SERIAL_PROCESS(mGroupId);
RS_SERIAL_PROCESS(mGroupName);
RS_SERIAL_PROCESS(mGroupFlags);
RS_SERIAL_PROCESS(mSignFlags);
RS_SERIAL_PROCESS(mPublishTs);
RS_SERIAL_PROCESS(mAuthorId);
RS_SERIAL_PROCESS(mCircleId);
RS_SERIAL_PROCESS(mCircleType);
RS_SERIAL_PROCESS(mAuthenFlags);
RS_SERIAL_PROCESS(mParentGrpId);
RS_SERIAL_PROCESS(mSubscribeFlags);
RS_SERIAL_PROCESS(mPop);
RS_SERIAL_PROCESS(mVisibleMsgCount);
RS_SERIAL_PROCESS(mLastPost);
RS_SERIAL_PROCESS(mGroupStatus);
RS_SERIAL_PROCESS(mServiceString);
RS_SERIAL_PROCESS(mOriginator);
RS_SERIAL_PROCESS(mInternalCircle);
}
};

View file

@ -98,10 +98,10 @@ struct GxsReputation : RsSerializable
void serial_process( RsGenericSerializer::SerializeJob j,
RsGenericSerializer::SerializeContext& ctx )
{
RS_PROCESS_SERIAL_MEMBER(mOverallScore);
RS_PROCESS_SERIAL_MEMBER(mIdScore);
RS_PROCESS_SERIAL_MEMBER(mOwnOpinion);
RS_PROCESS_SERIAL_MEMBER(mPeerOpinion);
RS_SERIAL_PROCESS(mOverallScore);
RS_SERIAL_PROCESS(mIdScore);
RS_SERIAL_PROCESS(mOwnOpinion);
RS_SERIAL_PROCESS(mPeerOpinion);
}
};
@ -278,13 +278,13 @@ struct RsIdentityUsage : RsSerializable
void serial_process( RsGenericSerializer::SerializeJob j,
RsGenericSerializer::SerializeContext& ctx )
{
RS_PROCESS_SERIAL_MEMBER(mServiceId);
RS_PROCESS_SERIAL_MEMBER_TYPED(mUsageCode, uint8_t);
RS_PROCESS_SERIAL_MEMBER(mGrpId);
RS_PROCESS_SERIAL_MEMBER(mMsgId);
RS_PROCESS_SERIAL_MEMBER(mAdditionalId);
RS_PROCESS_SERIAL_MEMBER(mComment);
RS_PROCESS_SERIAL_MEMBER(mHash);
RS_SERIAL_PROCESS(mServiceId);
RS_SERIAL_PROCESS(mUsageCode);
RS_SERIAL_PROCESS(mGrpId);
RS_SERIAL_PROCESS(mMsgId);
RS_SERIAL_PROCESS(mAdditionalId);
RS_SERIAL_PROCESS(mComment);
RS_SERIAL_PROCESS(mHash);
}
friend struct RsTypeSerializer;
@ -329,14 +329,14 @@ struct RsIdentityDetails : RsSerializable
virtual void serial_process(RsGenericSerializer::SerializeJob j,
RsGenericSerializer::SerializeContext& ctx)
{
RS_PROCESS_SERIAL_MEMBER(mId);
RS_PROCESS_SERIAL_MEMBER(mNickname);
RS_PROCESS_SERIAL_MEMBER(mFlags);
RS_PROCESS_SERIAL_MEMBER(mPgpId);
//RS_PROCESS_SERIAL_MEMBER_TYPED(mReputation, RsSerializable);
//RS_PROCESS_SERIAL_MEMBER_TYPED(mAvatar, RsSerializable);
RS_PROCESS_SERIAL_MEMBER(mLastUsageTS);
RS_PROCESS_SERIAL_MEMBER(mUseCases);
RS_SERIAL_PROCESS(mId);
RS_SERIAL_PROCESS(mNickname);
RS_SERIAL_PROCESS(mFlags);
RS_SERIAL_PROCESS(mPgpId);
//RS_SERIAL_PROCESS(mReputation);
//RS_SERIAL_PROCESS(mAvatar);
RS_SERIAL_PROCESS(mLastUsageTS);
RS_SERIAL_PROCESS(mUseCases);
}
};