/* */ #ifndef _D_META_FILE_UTIL_H_ #define _D_META_FILE_UTIL_H_ #include "MetaEntry.h" #include "Dictionary.h" #include "List.h" #include "Data.h" #include "common.h" #include using namespace std; class MetaFileUtil { private: MetaFileUtil() {} static MetaEntry* bdecodingR(const char** pp, const char* end); static Dictionary* parseDictionaryTree(const char** pp, const char* end); static List* parseListTree(const char** pp, const char* end); static Data* decodeWord(const char** pp, const char* end); static Data* decodeInt(const char** pp, const char* end); static string decodeWordAsString(const char** pp, const char* end); public: static MetaEntry* parseMetaFile(const string& file); static MetaEntry* bdecoding(const char* buf, int32_t len); }; #endif // _D_META_FILE_UTIL_H_