Class ComparerBuilder
Builds comparer functions and comparers.
public static class ComparerBuilder- Inheritance
- 
      
      ComparerBuilder
Methods
GetEqualityComparer(Type)
public static IEqualityComparer GetEqualityComparer(Type type)Parameters
- typeType
Returns
GetEqualityComparer<T>()
Returns implementations of the IEqualityComparer<T> generic interface based on object public members equality.
public static IEqualityComparer<T> GetEqualityComparer<T>()Returns
- IEqualityComparer<T>
- Instance of IEqualityComparer<T>. 
Type Parameters
- T
- The type of objects to compare. 
GetEqualityComparer<T>(IEnumerable<T>)
Returns implementations of the IEqualityComparer<T> generic interface based on object public members equality.
public static IEqualityComparer<T> GetEqualityComparer<T>(IEnumerable<T> ignored)Parameters
- ignoredIEnumerable<T>
Returns
- IEqualityComparer<T>
- Instance of IEqualityComparer<T>. 
Type Parameters
- T
- The type of objects to compare. 
GetEqualityComparer<T>(Func<MemberAccessor, bool>)
Returns implementations of the IEqualityComparer<T> generic interface based on provided object public members equality.
public static IEqualityComparer<T> GetEqualityComparer<T>(Func<MemberAccessor, bool> memberPredicate)Parameters
- memberPredicateFunc<MemberAccessor, bool>
- A function to filter members to compare. 
Returns
- IEqualityComparer<T>
- Instance of IEqualityComparer<T>. 
Type Parameters
- T
- The type of objects to compare. 
GetEqualityComparer<T>(Func<TypeAccessor<T>, IEnumerable<MemberAccessor>>)
Returns implementations of the IEqualityComparer<T> generic interface based on provided object public members equality.
public static IEqualityComparer<T> GetEqualityComparer<T>(Func<TypeAccessor<T>, IEnumerable<MemberAccessor>> membersToCompare)Parameters
- membersToCompareFunc<TypeAccessor<T>, IEnumerable<MemberAccessor>>
- A function that returns members to compare. 
Returns
- IEqualityComparer<T>
- Instance of IEqualityComparer<T>. 
Type Parameters
- T
- The type of objects to compare. 
GetEqualityComparer<T>(params Expression<Func<T, object?>>[])
Returns implementations of the IEqualityComparer<T> generic interface based on provided object public members equality.
public static IEqualityComparer<T> GetEqualityComparer<T>(params Expression<Func<T, object?>>[] membersToCompare)Parameters
- membersToCompareExpression<Func<T, object>>[]
- Members to compare. 
Returns
- IEqualityComparer<T>
- Instance of IEqualityComparer<T>. 
Type Parameters
- T
- The type of objects to compare. 
GetEqualsFunc<T>()
Returns GetEqualsFunc function for type T to compare.
public static Func<T, T, bool> GetEqualsFunc<T>()Returns
Type Parameters
- T
- The type of objects to compare. 
GetEqualsFunc<T>(IEnumerable<MemberAccessor>)
Returns GetEqualsFunc function for provided members for type T to compare.
public static Func<T, T, bool> GetEqualsFunc<T>(IEnumerable<MemberAccessor> members)Parameters
- membersIEnumerable<MemberAccessor>
- Members to compare. 
Returns
Type Parameters
- T
- The type of objects to compare. 
GetEqualsFunc<T>(params Expression<Func<T, object?>>[])
Returns GetEqualsFunc function for provided members for type T to compare.
public static Func<T, T, bool> GetEqualsFunc<T>(params Expression<Func<T, object?>>[] members)Parameters
- membersExpression<Func<T, object>>[]
- Members to compare. 
Returns
Type Parameters
- T
- The type of objects to compare. 
GetGetHashCodeFunc<T>()
Returns GetHashCode function for type T to compare.
public static Func<T, int> GetGetHashCodeFunc<T>()Returns
Type Parameters
- T
- The type of objects to compare. 
GetGetHashCodeFunc<T>(IEnumerable<MemberAccessor>)
Returns GetHashCode function for provided members for type T to compare.
public static Func<T, int> GetGetHashCodeFunc<T>(IEnumerable<MemberAccessor> members)Parameters
- membersIEnumerable<MemberAccessor>
- Members to compare. 
Returns
Type Parameters
- T
- The type of objects to compare. 
GetGetHashCodeFunc<T>(params Expression<Func<T, object?>>[])
Returns GetHashCode function for provided members for type T to compare.
public static Func<T, int> GetGetHashCodeFunc<T>(params Expression<Func<T, object?>>[] members)Parameters
- membersExpression<Func<T, object>>[]
- Members to compare. 
Returns
Type Parameters
- T
- The type of objects to compare.