mirror of
https://github.com/vczh-libraries/Release.git
synced 2026-05-28 19:16:15 +08:00
Update release
This commit is contained in:
@@ -184,6 +184,10 @@ GuiInstancePropertyInfo
|
|||||||
IGuiInstanceLoader
|
IGuiInstanceLoader
|
||||||
***********************************************************************/
|
***********************************************************************/
|
||||||
|
|
||||||
|
void IGuiInstanceLoader::ClearReflectionCache()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
void IGuiInstanceLoader::GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)
|
void IGuiInstanceLoader::GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@@ -367,6 +371,13 @@ GuiDefaultInstanceLoader
|
|||||||
return GlobalStringKey::Empty;
|
return GlobalStringKey::Empty;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ClearReflectionCache()
|
||||||
|
{
|
||||||
|
propertyTypes.Clear();
|
||||||
|
defaultConstructors.Clear();
|
||||||
|
instanceConstructors.Clear();
|
||||||
|
}
|
||||||
|
|
||||||
//***********************************************************************************
|
//***********************************************************************************
|
||||||
|
|
||||||
void ProcessGenericType(ITypeInfo* propType, ITypeInfo*& genericType, ITypeInfo*& elementType, bool& readableList, bool& writableList, bool& collectionType)
|
void ProcessGenericType(ITypeInfo* propType, ITypeInfo*& genericType, ITypeInfo*& elementType, bool& readableList, bool& writableList, bool& collectionType)
|
||||||
@@ -1033,6 +1044,15 @@ GuiInstanceLoaderManager
|
|||||||
}
|
}
|
||||||
return GlobalStringKey::Empty;
|
return GlobalStringKey::Empty;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ClearReflectionCache()
|
||||||
|
{
|
||||||
|
rootLoader->ClearReflectionCache();
|
||||||
|
FOREACH(Ptr<VirtualTypeInfo>, info, typeInfos.Values())
|
||||||
|
{
|
||||||
|
info->loader->ClearReflectionCache();
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
GUI_REGISTER_PLUGIN(GuiInstanceLoaderManager)
|
GUI_REGISTER_PLUGIN(GuiInstanceLoaderManager)
|
||||||
}
|
}
|
||||||
@@ -1643,6 +1663,7 @@ Instance Type Resolver (Instance)
|
|||||||
{
|
{
|
||||||
Workflow_GenerateAssembly(compiled, path, errors);
|
Workflow_GenerateAssembly(compiled, path, errors);
|
||||||
}
|
}
|
||||||
|
GetInstanceLoaderManager()->ClearReflectionCache();
|
||||||
}
|
}
|
||||||
|
|
||||||
#undef DELETE_ASSEMBLY
|
#undef DELETE_ASSEMBLY
|
||||||
|
|||||||
@@ -521,6 +521,7 @@ Instance Loader
|
|||||||
typedef collections::Group<GlobalStringKey, ArgumentInfo> ArgumentMap;
|
typedef collections::Group<GlobalStringKey, ArgumentInfo> ArgumentMap;
|
||||||
|
|
||||||
virtual GlobalStringKey GetTypeName() = 0;
|
virtual GlobalStringKey GetTypeName() = 0;
|
||||||
|
virtual void ClearReflectionCache();
|
||||||
|
|
||||||
virtual void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames);
|
virtual void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames);
|
||||||
virtual void GetConstructorParameters(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames);
|
virtual void GetConstructorParameters(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames);
|
||||||
@@ -573,6 +574,7 @@ Instance Loader Manager
|
|||||||
virtual description::ITypeDescriptor* GetTypeDescriptorForType(GlobalStringKey typeName) = 0;
|
virtual description::ITypeDescriptor* GetTypeDescriptorForType(GlobalStringKey typeName) = 0;
|
||||||
virtual void GetVirtualTypes(collections::List<GlobalStringKey>& typeNames) = 0;
|
virtual void GetVirtualTypes(collections::List<GlobalStringKey>& typeNames) = 0;
|
||||||
virtual GlobalStringKey GetParentTypeForVirtualType(GlobalStringKey virtualType) = 0;
|
virtual GlobalStringKey GetParentTypeForVirtualType(GlobalStringKey virtualType) = 0;
|
||||||
|
virtual void ClearReflectionCache() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern IGuiInstanceLoaderManager* GetInstanceLoaderManager();
|
extern IGuiInstanceLoaderManager* GetInstanceLoaderManager();
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user