public static ExitCode Run(string[] arguments)
{
Options options = new Options();
if (!options.ParseArguments(arguments))
{
Console.WriteLine(Options.Usage());
return(ExitCode.Failure);
}
try {
List <Assembly> assemblies = GetAssemblies(options);
if (assemblies.Count == 0)
{
Console.WriteLine(Options.Usage());
return(ExitCode.Failure);
}
return(RunAllInParallel(assemblies, options.GetRunOptions(), (uint)options.Threads).Result);
} catch (Exception ex) {
Console.WriteLine(ex.ToString());
return(ExitCode.Error);
}
}