private static bool StripAssembliesTo(string[] assemblies, string[] searchDirs, string outputFolder, string workingDirectory, out string output, out string error, string linkerPath, IIl2CppPlatformProvider platformProvider, IEnumerable <string> additionalBlacklist, bool developmentBuild) { // ISSUE: object of a compiler-generated type is created // ISSUE: variable of a compiler-generated type AssemblyStripper.\u003CStripAssembliesTo\u003Ec__AnonStorey65 assembliesToCAnonStorey65 = new AssemblyStripper.\u003CStripAssembliesTo\u003Ec__AnonStorey65(); // ISSUE: reference to a compiler-generated field assembliesToCAnonStorey65.workingDirectory = workingDirectory; if (!Directory.Exists(outputFolder)) { Directory.CreateDirectory(outputFolder); } // ISSUE: reference to a compiler-generated method additionalBlacklist = additionalBlacklist.Select <string, string>(new Func <string, string>(assembliesToCAnonStorey65.\u003C\u003Em__D4)).Where <string>(new Func <string, bool>(File.Exists)); IEnumerable <string> userBlacklistFiles = AssemblyStripper.GetUserBlacklistFiles(); foreach (string str in userBlacklistFiles) { Console.WriteLine("UserBlackList: " + str); } additionalBlacklist = additionalBlacklist.Concat <string>(userBlacklistFiles); List <string> stringList = new List <string>() { "-out \"" + outputFolder + "\"", "-l none", "-c link", "-b " + (object)developmentBuild, "-x \"" + AssemblyStripper.GetModuleWhitelist("Core", platformProvider.moduleStrippingInformationFolder) + "\"", "-f \"" + Path.Combine(platformProvider.il2CppFolder, "LinkerDescriptors") + "\"" }; stringList.AddRange(additionalBlacklist.Select <string, string>((Func <string, string>)(path => "-x \"" + path + "\""))); stringList.AddRange(((IEnumerable <string>)searchDirs).Select <string, string>((Func <string, string>)(d => "-d \"" + d + "\""))); stringList.AddRange(((IEnumerable <string>)assemblies).Select <string, string>((Func <string, string>)(assembly => "-a \"" + Path.GetFullPath(assembly) + "\""))); // ISSUE: reference to a compiler-generated field return(AssemblyStripper.RunAssemblyLinker((IEnumerable <string>)stringList, out output, out error, linkerPath, assembliesToCAnonStorey65.workingDirectory)); }
private static bool StripAssembliesTo(string[] assemblies, string[] searchDirs, string outputFolder, string workingDirectory, out string output, out string error, string linkerPath, IIl2CppPlatformProvider platformProvider, IEnumerable <string> additionalBlacklist, bool developmentBuild) { if (!Directory.Exists(outputFolder)) { Directory.CreateDirectory(outputFolder); } additionalBlacklist = (from s in additionalBlacklist select(!Path.IsPathRooted(s)) ? Path.Combine(workingDirectory, s) : s).Where(new Func <string, bool>(File.Exists)); IEnumerable <string> userBlacklistFiles = AssemblyStripper.GetUserBlacklistFiles(); foreach (string current in userBlacklistFiles) { Console.WriteLine("UserBlackList: " + current); } additionalBlacklist = additionalBlacklist.Concat(userBlacklistFiles); List <string> list = new List <string> { "-out \"" + outputFolder + "\"", "-l none", "-c link", "-b " + developmentBuild, "-x \"" + AssemblyStripper.GetModuleWhitelist("Core", platformProvider.moduleStrippingInformationFolder) + "\"", "-f \"" + Path.Combine(platformProvider.il2CppFolder, "LinkerDescriptors") + "\"" }; list.AddRange(from path in additionalBlacklist select "-x \"" + path + "\""); list.AddRange(from d in searchDirs select "-d \"" + d + "\""); list.AddRange(from assembly in assemblies select "-a \"" + Path.GetFullPath(assembly) + "\""); return(AssemblyStripper.RunAssemblyLinker(list, out output, out error, linkerPath, workingDirectory)); }
public LinkXmlReader() { IEnumerator <string> enumerator = AssemblyStripper.GetUserBlacklistFiles().GetEnumerator(); try { while (enumerator.MoveNext()) { string current = enumerator.Current; XPathNavigator navigator = new XPathDocument(current).CreateNavigator(); navigator.MoveToFirstChild(); XPathNodeIterator iterator = navigator.SelectChildren("assembly", string.Empty); while (iterator.MoveNext()) { this._assembliesInALinkXmlFile.Add(iterator.Current.GetAttribute("fullname", string.Empty)); } } } finally { if (enumerator == null) { } enumerator.Dispose(); } }
public LinkXmlReader() { foreach (string userBlacklistFile in AssemblyStripper.GetUserBlacklistFiles()) { XPathNavigator navigator = new XPathDocument(userBlacklistFile).CreateNavigator(); navigator.MoveToFirstChild(); XPathNodeIterator xpathNodeIterator = navigator.SelectChildren("assembly", string.Empty); while (xpathNodeIterator.MoveNext()) { this._assembliesInALinkXmlFile.Add(xpathNodeIterator.Current.GetAttribute("fullname", string.Empty)); } } }
public LinkXmlReader() { foreach (var linkXmlFile in AssemblyStripper.GetUserBlacklistFiles()) { XPathDocument linkXml = new XPathDocument(linkXmlFile); var navigator = linkXml.CreateNavigator(); navigator.MoveToFirstChild(); var iterator = navigator.SelectChildren("assembly", string.Empty); while (iterator.MoveNext()) { _assembliesInALinkXmlFile.Add(iterator.Current.GetAttribute("fullname", string.Empty)); } } }
private static bool StripAssembliesTo(string[] assemblies, string[] searchDirs, string outputFolder, string workingDirectory, out string output, out string error, string linkerPath, IIl2CppPlatformProvider platformProvider, IEnumerable <string> additionalBlacklist) { if (!Directory.Exists(outputFolder)) { Directory.CreateDirectory(outputFolder); } IEnumerable <string> arg_50_0 = from s in additionalBlacklist select(!Path.IsPathRooted(s)) ? Path.Combine(workingDirectory, s) : s; if (AssemblyStripper.< > f__mg$cache0 == null) { AssemblyStripper.< > f__mg$cache0 = new Func <string, bool>(File.Exists); } additionalBlacklist = arg_50_0.Where(AssemblyStripper.< > f__mg$cache0); IEnumerable <string> userBlacklistFiles = AssemblyStripper.GetUserBlacklistFiles(); foreach (string current in userBlacklistFiles) { Console.WriteLine("UserBlackList: " + current); } additionalBlacklist = additionalBlacklist.Concat(userBlacklistFiles); List <string> list = new List <string> { "--api " + PlayerSettings.GetApiCompatibilityLevel(EditorUserBuildSettings.activeBuildTargetGroup).ToString(), "-out \"" + outputFolder + "\"", "-l none", "-c link", "-b true", "-x \"" + AssemblyStripper.GetModuleWhitelist("Core", platformProvider.moduleStrippingInformationFolder) + "\"", "-f \"" + Path.Combine(platformProvider.il2CppFolder, "LinkerDescriptors") + "\"" }; list.AddRange(from path in additionalBlacklist select "-x \"" + path + "\""); list.AddRange(from d in searchDirs select "-d \"" + d + "\""); list.AddRange(from assembly in assemblies select "-a \"" + Path.GetFullPath(assembly) + "\""); return(AssemblyStripper.RunAssemblyLinker(list, out output, out error, linkerPath, workingDirectory)); }