/// <summary> /// Initializes an instance with the specified information. /// </summary> /// <param name="conclusions">All conclusions.</param> /// <param name="views">All views.</param> /// <param name="exocet">The exocet.</param> /// <param name="digits">All digits.</param> /// <param name="lockedMemberQ">The locked member Q.</param> /// <param name="lockedMemberR">The locked member R.</param> /// <param name="targetEliminations">The target eliminations.</param> /// <param name="mirrorEliminations">The mirror eliminations.</param> /// <param name="bibiEliminations">The Bi-bi pattern eliminations.</param> /// <param name="targetPairEliminations">The target pair eliminations.</param> /// <param name="swordfishEliminations">The swordfish pattern eliminations.</param> public JuniorExocetTechniqueInfo( IReadOnlyList <Conclusion> conclusions, IReadOnlyList <View> views, Exocet exocet, IEnumerable <int> digits, IEnumerable <int>?lockedMemberQ, IEnumerable <int>?lockedMemberR, TargetEliminations targetEliminations, MirrorEliminations mirrorEliminations, BibiPatternEliminations bibiEliminations, TargetPairEliminations targetPairEliminations, SwordfishEliminations swordfishEliminations) : base( conclusions, views, exocet, digits, TechniqueCode.Je, lockedMemberQ, lockedMemberR, targetEliminations, mirrorEliminations, bibiEliminations, targetPairEliminations, swordfishEliminations, default, default) { }
/// <summary> /// Initializes an instance with the specified information. /// </summary> /// <param name="conclusions">All conclusions.</param> /// <param name="views">All views.</param> /// <param name="exocet">The exocet.</param> /// <param name="digits">All digits.</param> /// <param name="techniqueCode">The technique code.</param> /// <param name="lockedMemberQ">The locked member Q.</param> /// <param name="lockedMemberR">The locked member R.</param> /// <param name="targetEliminations">The target eliminations.</param> /// <param name="mirrorEliminations">The mirror eliminations.</param> /// <param name="bibiEliminations"> /// The Bi-bi pattern eliminations (only used for junior exocets). /// </param> /// <param name="targetPairEliminations"> /// The target pair eliminations (only used for junior exocets). /// </param> /// <param name="swordfishEliminations"> /// The swordfish pattern eliminations (only used for junior exocets). /// </param> /// <param name="trueBaseEliminations"> /// The true base eliminations (only used for senior exocets). /// </param> /// <param name="compatibilityEliminations"> /// The compatibility test eliminations (only used for senior exocets). /// </param> public ExocetTechniqueInfo( IReadOnlyList <Conclusion> conclusions, IReadOnlyList <View> views, Exocet exocet, IEnumerable <int> digits, TechniqueCode techniqueCode, IEnumerable <int>?lockedMemberQ, IEnumerable <int>?lockedMemberR, TargetEliminations targetEliminations, MirrorEliminations mirrorEliminations, BibiPatternEliminations bibiEliminations, TargetPairEliminations targetPairEliminations, SwordfishEliminations swordfishEliminations, TrueBaseEliminations trueBaseEliminations, CompatibilityTestEliminations compatibilityEliminations) : base(conclusions, views) { (Exocet, Digits, TechniqueCode, LockedMemberQ, LockedMemberR) = (exocet, digits, techniqueCode, lockedMemberQ, lockedMemberR); var list = (List <Conclusion>)Conclusions; if (!((TargetEliminations = targetEliminations).Conclusions is null)) { list.AddRange(TargetEliminations); } if (!((MirrorEliminations = mirrorEliminations).Conclusions is null)) { list.AddRange(MirrorEliminations); } if (!((BibiEliminations = bibiEliminations).Conclusions is null)) { list.AddRange(BibiEliminations); } if (!((TargetPairEliminations = targetPairEliminations).Conclusions is null)) { list.AddRange(TargetPairEliminations); } if (!((SwordfishEliminations = swordfishEliminations).Conclusions is null)) { list.AddRange(SwordfishEliminations); } if (!((TrueBaseEliminations = trueBaseEliminations).Conclusions is null)) { list.AddRange(TrueBaseEliminations); } if (!((CompatibilityTestEliminations = compatibilityEliminations).Conclusions is null)) { list.AddRange(CompatibilityTestEliminations); } var temp = Conclusions.Distinct().ToList(); // Call 'ToList' to execute the query forcedly. list.Clear(); list.AddRange(temp); }