/// <summary> /// ノード全体を比較します。 /// </summary> public bool NodeEquals(MoveNode other, bool compareComment) { if (ReferenceEquals(other, null)) { return(false); } if (MoveCount != other.MoveCount) { return(false); } if (Move != other.Move) { return(false); } if (Duration != other.Duration) { return(false); } if (NextNodeCount != other.NextNodeCount) { return(false); } if (compareComment && !CommentList.SequenceEqual(other.CommentList)) { return(false); } for (var i = 0; i < NextNodeCount; ++i) { if (!NextNodes[i].NodeEquals(other.NextNodes[i], compareComment)) { return(false); } } return(true); }