private static SolutionAnalysis AnalyzeExerciseSpecificRules(ParsedSolution parsedSolution) { switch (parsedSolution.Solution.Slug) { case Exercises.TwoFer: return(TwoFerAnalyzer.Analyze(parsedSolution)); case Exercises.Gigasecond: return(GigasecondAnalyzer.Analyze(parsedSolution)); case Exercises.Leap: return(LeapAnalyzer.Analyze(parsedSolution)); default: return(UnsupportedExerciseAnalyzer.Analyze(parsedSolution)); } }
private static SolutionAnalysis AnalyzeSharesRules(ParsedSolution parsedSolution) => SharedAnalyzer.Analyze(parsedSolution);
private static SolutionAnalysis AnalyzeSolution(ParsedSolution parsedSolution) => AnalyzeSharesRules(parsedSolution) ?? AnalyzeExerciseSpecificRules(parsedSolution);