#ifndef PORYGONLANG_USERDATA_HPP #define PORYGONLANG_USERDATA_HPP #include #include #include "UserDataField.hpp" class UserData { std::unordered_map _fields; public: explicit UserData(std::unordered_map fields){ _fields = std::move(fields); } bool ContainsField(uint32_t fieldId){ return _fields.find(fieldId) != _fields.end(); } UserDataField* GetField(uint32_t fieldId){ return _fields[fieldId]; } void CreateField(uint32_t fieldId, UserDataField* field){ _fields.insert({fieldId, field}); } int32_t GetFieldCount(){ return _fields.size(); } }; #endif //PORYGONLANG_USERDATA_HPP