public Report GetReport(SolverContext context, Solution solution, SolutionMapping solutionMapping) { PluginSolutionMapping pluginSolutionMapping = solutionMapping as PluginSolutionMapping; if (pluginSolutionMapping == null && solutionMapping != null) { throw new ArgumentException("solutionMapping is not a LinearSolutionMapping", "solutionMapping"); } return(new Z3TermSolverReport(context, this, solution, pluginSolutionMapping)); }
private void RunInstanceOfSolution(SolutionMapping solutionMapping) { var input = this.ReadDataFromClipboard(); var instance = Activator.CreateInstance(solutionMapping.ClassType); try { var result = solutionMapping.Method.Invoke(instance, new object[] { input }); Console.WriteLine($"Solution for day {solutionMapping.Day}, problem {solutionMapping.Problem}:"); Console.WriteLine(result); this.WriteDataToClipboard(result?.ToString() ?? string.Empty); Console.WriteLine("Result copied to clipboard."); } catch (Exception e) { Console.WriteLine("Failed to Generate answer: " + e.Message); } }
public Report GetReport(SolverContext context, Solution solution, SolutionMapping solutionMapping) { LinearSolutionMapping lpSolutionMapping = solutionMapping as LinearSolutionMapping; if (lpSolutionMapping == null && solutionMapping != null) throw new ArgumentException("solutionMapping is not a LinearSolutionMapping", "solutionMapping"); return new Z3LinearSolverReport(context, this, solution, lpSolutionMapping); }