/// <summary> /// Writes each tag and the tag termination character /// </summary> /// <param name="writer"></param> /// <param name="tagsToSerialize"></param> public void Serialize(PgnWriter writer, Tags tagsToSerialize) { Serialize(writer, Convert(tagsToSerialize.RequiredTags)); if (!_options.KeepOnlyRequiredTags) { Serialize(writer, Convert(tagsToSerialize.SupplementalTags)); } writer.WriteNewLine(); }
/// <summary> /// Writes move section in PGN form. /// </summary> /// <param name="node">The starting node.</param> /// <param name="pgnWriter">The writer used to write the information.</param> public void Serialize(MoveTreeNode <PostMoveState> node, PgnWriter pgnWriter) { var enumerator = new GameToPgnEnumerator(node); while (enumerator.MoveNext()) { var move = enumerator.Current; pgnWriter.WriteMove(move); } }
private void Serialize(PgnWriter writer, IEnumerable <string> tagPairs) { var arrTagPairs = tagPairs as string[] ?? tagPairs.ToArray(); if (!arrTagPairs.Any()) { return; } foreach (var tag in arrTagPairs) { writer.WriteTag(tag); } }