// Constructors /// <summary> /// Initializes a new instance of this type. /// </summary> /// <param name="provider">Comparer provider this comparer is bound to.</param> /// <param name="comparisonRules">Comparison rules.</param> public WrappingComparer(IComparerProvider provider, ComparisonRules comparisonRules) : base(provider, comparisonRules) { ArgumentValidator.EnsureArgumentNotNull(provider, "provider"); BaseComparer1 = provider.GetComparer <TBase1>().ApplyRules(comparisonRules[0]); BaseComparer2 = provider.GetComparer <TBase2>().ApplyRules(comparisonRules[1]); }
public WrappingComparer(SerializationInfo info, StreamingContext context) : base(info, context) { BaseComparer1 = (AdvancedComparerStruct <TBase1>)info.GetValue(nameof(BaseComparer1), typeof(AdvancedComparerStruct <TBase1>)); BaseComparer2 = (AdvancedComparerStruct <TBase2>)info.GetValue(nameof(BaseComparer2), typeof(AdvancedComparerStruct <TBase2>)); }