/// <summary> /// Performs the operations and commands specified in the input arguments. /// </summary> private static async Task RunOptionsAsync(CLIOptions options) { ConfigCreator creator = new ConfigCreator(options); await creator.InitializeAsync(); if (creator.Catalog == null || creator.Config == null) { options.ErrorWriter.WriteLine(Strings.NoPartsMessage); return; } PartInfo infoGetter = new PartInfo(creator, options); infoGetter.PrintRequestedInfo(); MatchChecker checker = new MatchChecker(creator, options); checker.PerformMatching(); RejectionTracer tracer = new RejectionTracer(creator, options); tracer.PerformRejectionTracing(); }