public static Solution ParseFrom(TextReader reader) { var metadata = SolutionMetadata.ParseFrom(reader); var moves = ParseMoveSequenceFrom(reader); return(new Solution(metadata, moves)); }
public static SolutionMetadata FromDictionary(IDictionary <string, string> dict) { var result = new SolutionMetadata(); foreach (var entry in dict) { switch (entry.Key) { case "Name": result.Name = entry.Value; break; case "AuthorName": result.AuthorName = entry.Value; break; case "AuthorEmail": result.AuthorEmail = entry.Value; break; case "CreationDate": result.CreationDate = DateTimeOffset.Parse(entry.Value); break; } } return(result); }
public Core.Solution MakeSolution() { var metadata = new Core.SolutionMetadata( creationDate: new DateTimeOffset() ); return(new Core.Solution(metadata, moves)); }
public Solution(SolutionMetadata metadata, IEnumerable <Move> moves) { Metadata = metadata; Moves = new List <Move>(moves); }