public static void DepAnalyzer(Repository repo, List <string> files, string[] args) { BuildTypeAnalyzer builder = new BuildTypeAnalyzer(repo); Parser parser = builder.build(); BuildDepAnalyzer depBuilder = new BuildDepAnalyzer(repo); Parser depParser = depBuilder.build(); foreach (string file in files) { if (!repo.semi.open(file as string)) { Console.Write("\n Can't open {0}\n\n", args[0]); return; } try { while (repo.semi.get().Count > 0) { parser.parse(repo.semi); depParser.parse(repo.semi); } } catch (Exception ex) { Console.Write("\n\n {0}\n", ex.Message); } repo.clearScopeStack(); repo.semi.close(); } }
//---------< conduct dependency analysis >----------------------------------------- public static void depAnalysis(string[] args, List <string> files, Repository repo) { BuildTypeAnalyzer builder = new BuildTypeAnalyzer(repo); Parser parser = builder.build(); BuildDepAnalyzer depBuilder = new BuildDepAnalyzer(repo); Parser depParser = depBuilder.build(); foreach (string file in files) { if (file.Contains("TemporaryGeneratedFile") || file.Contains("AssemblyInfo")) { continue; } if (!repo.semi.open(file as string)) { Console.Write("\n Can't open {0}\n\n", args[0]); return; } try { while (repo.semi.get().Count > 0) { parser.parse(repo.semi); depParser.parse(repo.semi); } } catch (Exception ex) { Console.Write("\n\n {0}\n", ex.Message); } repo.clearScopeStack(); repo.semi.close(); } }