public static Type[] GetImplementationTypes(Type inputType) { if (!implementationTypeMapping_.ContainsKey(inputType)) { implementationTypeMapping_[inputType] = AllAssemblyTypes .Where(t => inputType.IsAssignableFrom(t) && t.IsClass && !t.IsAbstract && !t.IsGenericType) .ToArray(); } return(implementationTypeMapping_[inputType]); }
public static void LogNames(string fileName) { using (StreamWriter sr = new StreamWriter(fileName)) { var temp = AllAssemblyTypes.Select(x => x.FullName.Replace('+', '.')).Distinct().ToList(); for (int i = 0; i < temp.Count; i++) { sr.WriteLine(temp[i]); } sr.Flush(); } Debug.Log(string.Format("All \"classes,interfaces,structs\"'s names are saved in {0}", fileName)); }