private TurnRecord(MoveRecord move, MoveRecord secondaryMove, CaptureRecord capture, PromotionRecord promotion) { Move = move; SecondaryMove = secondaryMove; Capture = capture; Promotion = promotion; }
internal TurnRecord(MoveRecord move, CaptureRecord capture, PromotionRecord promotion) : this(move, null, capture, promotion) { }
internal TurnRecord(MoveRecord move, CaptureRecord capture) : this(move, null, capture, null) { }