#include "pch.h" #include "serializer.h" Serializer::Type::Ref Serializer::instanciate(const std::string& key) { if (m_ctor_table.find(key) != m_ctor_table.end()) return m_ctor_table[key](); return nullptr; } std::map> Serializer::m_ctor_table = { { "VlLs", [] { return std::make_shared(); } }, { "TEXT", [] { return std::make_shared(); } }, { "Objc", [] { return std::make_shared(); } }, { "UntF", [] { return std::make_shared(); } }, { "bool", [] { return std::make_shared(); } }, { "long", [] { return std::make_shared(); } }, { "doub", [] { return std::make_shared(); } }, { "enum", [] { return std::make_shared(); } }, { "tdta", [] { return std::make_shared(); } }, { "vec2", [] { return std::make_shared(); } }, { "vec3", [] { return std::make_shared(); } }, { "vec4", [] { return std::make_shared(); } }, { "ive2", [] { return std::make_shared(); } }, { "ive3", [] { return std::make_shared(); } }, { "ive4", [] { return std::make_shared(); } }, { "flt ", [] { return std::make_shared(); } }, { "cstr", [] { return std::make_shared(); } }, };