static void LoadFile(string filename) { var xml = Path.ChangeExtension(Path.GetFileNameWithoutExtension(filename), "xml"); if (File.Exists(xml)) { OptionsReader.Read(options, xml); } }
static void ParseArguments(List <string> arguments) { while (arguments.Count > 0) { var token = arguments[0]; if (token == "--") { arguments.RemoveAt(0); break; } if (!token.StartsWith("--optimizer", StringComparison.Ordinal)) { break; } arguments.RemoveAt(0); switch (token) { case "--optimizer": if (mainModule != null) { Console.Error.WriteLine($"Duplicate --optimizer argument."); Environment.Exit(1); } mainModule = arguments[0]; arguments.RemoveAt(0); LoadFile(mainModule); moduleEnabled = true; continue; case "--optimizer-xml": var filename = arguments[0]; arguments.RemoveAt(0); OptionsReader.Read(options, filename); moduleEnabled = true; break; case "--optimizer-options": options.ParseOptions(arguments[0]); arguments.RemoveAt(0); moduleEnabled = true; break; case "--optimizer-report": filename = arguments [0]; arguments.RemoveAt(0); options.ReportFileName = filename; break; case "--optimizer-ref": filename = arguments [0]; arguments.RemoveAt(0); options.AssemblyReferences.Add(filename); break; } } }
public static void Read(OptimizerOptions options, string filename) { var settings = new XmlReaderSettings(); var reader = new OptionsReader(options, filename); using (var xml = XmlReader.Create(filename, settings)) { Console.WriteLine($"Reading XML description from {filename}."); reader.Read(new XPathDocument(xml)); } }