static void Main(string[] args) { AppDomain currentDomain = AppDomain.CurrentDomain; currentDomain.UnhandledException += new UnhandledExceptionEventHandler(UnhandledExceptionHandler); // Parses the command line options. new CommandLineOptions(args).Parse(); // Initializes program info. ProgramInfo.Initialize(); // Run the parser. Parser.Run(); // Run the compiler. Compiler.Run(); // Run the static analyser. StaticAnalyzer.Run(); // Run the dynamic analyser. DynamicAnalyzer.Run(); Output.Print(". Done"); }
/// <summary> /// Starts the P# static analyser. /// </summary> public static void Run() { if (!Configuration.RunStaticAnalysis) { return; } foreach (var project in ProgramInfo.Solution.Projects) { Output.Print(". Analyzing " + project.Name); StaticAnalyzer.AnalyseProgramUnit(project); } // Prints error statistics and profiling results. AnalysisErrorReporter.PrintStats(); // Prints program statistics. if (Configuration.ShowProgramStatistics) { AnalysisContext.PrintStatistics(); } }