Base: Make Type::importModule private
This commit is contained in:
@@ -3527,17 +3527,10 @@ unsigned int PropertyPersistentObject::getMemSize() const
|
||||
|
||||
void PropertyPersistentObject::setValue(const char* type)
|
||||
{
|
||||
if (!type) {
|
||||
type = "";
|
||||
}
|
||||
if (type[0]) {
|
||||
Base::Type::importModule(type);
|
||||
Base::Type t = Base::Type::fromName(type);
|
||||
if (!Base::Tools::isNullOrEmpty(type)) {
|
||||
Base::Type t = Base::Type::getTypeIfDerivedFrom(type, Persistence::getClassTypeId());
|
||||
if (t.isBad()) {
|
||||
throw Base::TypeError("Invalid type");
|
||||
}
|
||||
if (!t.isDerivedFrom(Persistence::getClassTypeId())) {
|
||||
throw Base::TypeError("Type must be derived from Base::Persistence");
|
||||
throw Base::TypeError("Invalid type or type must be derived from Base::Persistence");
|
||||
}
|
||||
if (_pObject && _pObject->getTypeId() == t) {
|
||||
return;
|
||||
|
||||
@@ -94,7 +94,6 @@ public:
|
||||
[[nodiscard]] bool canInstantiate() const;
|
||||
/// Creates an instance of the named type
|
||||
[[nodiscard]] static void* createInstanceByName(const char* typeName, bool loadModule = false);
|
||||
static void importModule(const char* TypeName);
|
||||
|
||||
using instantiationMethod = void* (*)();
|
||||
|
||||
@@ -142,6 +141,7 @@ public:
|
||||
|
||||
private:
|
||||
[[nodiscard]] instantiationMethod getInstantiationMethod() const;
|
||||
static void importModule(const char* TypeName);
|
||||
|
||||
TypeId index {BadTypeIndex};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user