#pragma once #include "type.h" namespace YAML { template struct TextSerialize { static string Serialize(const Any& any); static bool Unserialize(const string& val, const Any& any); }; using StringFuncs = std::pair; using StringFuncMap = std::unordered_map; class TextArchive{ static StringFuncMap BuildStringMap(); public: inline static StringFuncMap FuncMap = BuildStringMap(); template static void Register(); static Node Serialize(const Any& any); static bool Unserialize(const Node& res, const Any& any); }; }