5 using System.Collections.Generic;
18 #if UNITY_WSA && !UNITY_EDITOR 19 private readonly Dictionary<TypeInfo, string> dataModelTypeToName =
new Dictionary<TypeInfo, string>();
20 private readonly Dictionary<string, TypeInfo> dataModelNameToType =
new Dictionary<string, TypeInfo>();
22 private readonly Dictionary<Type, string> dataModelTypeToName =
new Dictionary<Type, string>();
23 private readonly Dictionary<string, Type> dataModelNameToType =
new Dictionary<string, Type>();
41 var typeInfo = type.GetTypeInfo();
43 dataModelTypeToName.TryGetValue(typeInfo, out retVal);
47 #if UNITY_WSA && !UNITY_EDITOR 48 public TypeInfo GetDataModelType(
string name)
57 dataModelNameToType.TryGetValue(name, out retVal);
63 dataModelNameToType.Clear();
64 dataModelTypeToName.Clear();
66 foreach (var assembly
in GetAssemblies())
70 if (!assembly.FullName.StartsWith(
"Assembly-"))
75 #if UNITY_WSA && !UNITY_EDITOR 76 foreach (TypeInfo type
in assembly.GetTypes())
78 foreach (Type type in assembly.GetTypes())
84 if (attribute != null)
86 string dataModelName = type.Name;
94 dataModelNameToType.Add(dataModelName, type);
95 dataModelTypeToName.Add(type, dataModelName);
101 private static Assembly[] GetAssemblies()
103 #if UNITY_WSA && !UNITY_EDITOR 104 return new Assembly[]
109 return AppDomain.CurrentDomain.GetAssemblies();