void MemberGroup::unmarshal(StorageIntf *s) { memberList = unmarshalMemberList(s); inDeclSection = (MemberList *)unmarshalObjPointer(s); grpId = unmarshalInt(s); grpHeader = unmarshalQCString(s); fileName = unmarshalQCString(s); scope = (Definition *)unmarshalObjPointer(s); doc = unmarshalQCString(s); inSameSection = unmarshalBool(s); m_numDecMembers = unmarshalInt(s); m_numDocMembers = unmarshalInt(s); m_parent = (Definition *)unmarshalObjPointer(s); m_docFile = unmarshalQCString(s); m_xrefListItems = unmarshalItemInfoList (Doxygen::symbolStorage); }
MemberSDict *unmarshalMemberSDict(StorageIntf *s) { uint i; uint count = unmarshalUInt(s); //printf("--- unmarshalMemberSDict count=%d\n",count); if (count==NULL_LIST) { //printf("--- end unmarshalMemberSDict\n"); return 0; // null list } MemberSDict *result = new MemberSDict; assert(count<1000000); //printf("Reading %d key-value pairs\n",count); for (i=0;i<count;i++) { //printf(" unmarshaling pair %d\n",i); QCString key = unmarshalQCString(s); //printf(" unmarshaling key %s\n",key.data()); MemberDef *md = (MemberDef *)unmarshalObjPointer(s); //printf(" unmarshalMemberSDict i=%d key=%s md=%p\n",i,key.data(),md); result->append(key,md); } //printf("--- end unmarshalMemberSDict\n"); return result; }
void Definition::loadFromDisk() const { //printf("%p: Definition::loadFromDisk()\n",this); Definition *that = (Definition *)this; assert(m_impl==0); that->m_impl = new DefinitionImpl; uint marker = unmarshalUInt(Doxygen::symbolStorage); assert(marker==START_MARKER); m_impl->sectionDict = unmarshalSectionDict (Doxygen::symbolStorage); m_impl->sourceRefByDict = unmarshalMemberSDict (Doxygen::symbolStorage); m_impl->sourceRefsDict = unmarshalMemberSDict (Doxygen::symbolStorage); m_impl->xrefListItems = unmarshalItemInfoList (Doxygen::symbolStorage); m_impl->partOfGroups = unmarshalGroupList (Doxygen::symbolStorage); m_impl->details = unmarshalDocInfo (Doxygen::symbolStorage); m_impl->inbodyDocs = unmarshalDocInfo (Doxygen::symbolStorage); m_impl->brief = unmarshalBriefInfo (Doxygen::symbolStorage); m_impl->body = unmarshalBodyInfo (Doxygen::symbolStorage); m_impl->docSignatures = unmarshalQCString (Doxygen::symbolStorage); m_impl->localName = unmarshalQCString (Doxygen::symbolStorage); m_impl->qualifiedName = unmarshalQCString (Doxygen::symbolStorage); m_impl->ref = unmarshalQCString (Doxygen::symbolStorage); m_impl->hidden = unmarshalBool (Doxygen::symbolStorage); m_impl->isArtificial = unmarshalBool (Doxygen::symbolStorage); m_impl->outerScope = (Definition *)unmarshalObjPointer (Doxygen::symbolStorage); m_impl->defFileName = unmarshalQCString (Doxygen::symbolStorage); m_impl->defLine = unmarshalInt (Doxygen::symbolStorage); m_impl->defFileExt = unmarshalQCString (Doxygen::symbolStorage); marker = unmarshalUInt(Doxygen::symbolStorage); assert(marker==END_MARKER); }
BodyInfo *unmarshalBodyInfo(StorageIntf *s) { uint count = unmarshalUInt(s); if (count==NULL_LIST) return 0; BodyInfo *result = new BodyInfo; result->startLine = unmarshalInt(s); result->endLine = unmarshalInt(s); result->fileDef = (FileDef*)unmarshalObjPointer(s); return result; }
GroupList *unmarshalGroupList(StorageIntf *s) { uint i; uint count = unmarshalUInt(s); if (count==NULL_LIST) return 0; // null list assert(count<1000000); GroupList *result = new GroupList; for (i=0;i<count;i++) { GroupDef *gd = (GroupDef *)unmarshalObjPointer(s); result->append(gd); } return result; }
SDict<MemberList> *unmarshalMemberLists(StorageIntf *s) { uint i; uint count = unmarshalUInt(s); if (count==NULL_LIST) return 0; SDict<MemberList> *result = new SDict<MemberList>(7); assert(count<1000000); for (i=0;i<count;i++) { QCString key = unmarshalQCString(s); MemberList *ml = (MemberList *)unmarshalObjPointer(s); result->append(key,ml); } return result; }
MemberList *unmarshalMemberList(StorageIntf *s) { uint i; uint count = unmarshalUInt(s); if (count==NULL_LIST) return 0; MemberList *result = new MemberList; assert(count<1000000); for (i=0;i<count;i++) { MemberDef *md = (MemberDef*)unmarshalObjPointer(s); result->append(md); } result->unmarshal(s); return result; }
SectionDict *unmarshalSectionDict(StorageIntf *s) { uint i; uint count = unmarshalUInt(s); //printf("unmarshalSectionDict count=%d\n",count); if (count==NULL_LIST) return 0; // null list SectionDict *result = new SectionDict(17); assert(count<1000000); for (i=0;i<count;i++) { QCString key = unmarshalQCString(s); SectionInfo *si = (SectionInfo *)unmarshalObjPointer(s); //printf(" unmarshalSectionDict i=%d key=%s si=%s\n",count,key.data(),si->label.data()); result->append(key,si); } return result; }