/* */ #ifndef _D_META_FILE_UTIL_H_ #define _D_META_FILE_UTIL_H_ #include "common.h" #include namespace aria2 { class MetaEntry; class Dictionary; class List; class Data; 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 std::string decodeWordAsString(const char** pp, const char* end); public: static MetaEntry* parseMetaFile(const std::string& file); static MetaEntry* bdecoding(const char* buf, int32_t len); }; } // namespace aria2 #endif // _D_META_FILE_UTIL_H_