I see that there is indeed a template specialization for
std::map, I guess this is supposed to work and I just don’t get it right.
I have map of type
bs::Map<UINT32, ScriptObject> where
ScriptObject is a class implementing
When adding it via
BS_RTTI_MEMBER_PLAIN I get a complaint that the value type is not POD:
/home/andre/code/REGoth-bs/lib/bsf/Source/Foundation/bsfUtility/Prerequisites/BsRTTIPrerequisites.h:43:17: error: static assertion failed:
Provided type isn't plain-old-data. You need to specialize RTTIPlainType template in order to serialize this type.
(Or call BS_ALLOW_MEMCPY_SERIALIZATION(type) macro if you are sure the type can be properly serialized using just memcpy.)
If I add it via
BS_RTTI_MEMBER_REFL I get:
/home/andre/code/REGoth-bs/lib/bsf/Source/Foundation/bsfUtility/Reflection/BsRTTIType.h:587:19: error: static assertion failed:
Invalid data type for complex field. It needs to derive from bs::IReflectable.