//****************************** // Written by Peter Golde // Copyright (c) 2004-2007, Wintellect // // Use and restribution of this code is subject to the license agreement // contained in the file "License.txt" accompanying this file. //****************************** using System; using System.Collections; using System.Collections.Generic; namespace Wintellect.PowerCollections { /// <summary> /// A holder class for various internal utility functions that need to be shared. /// </summary> internal static class Util { /// <summary> /// Gets the hash code for an object using a comparer. Correctly handles /// null. /// </summary> /// <param name="item">Item to get hash code for. Can be null.</param> /// <param name="equalityComparer">The comparer to use.</param> /// <returns>The hash code for the item.</returns> public static int GetHashCode<T>(T item, IEqualityComparer<T> equalityComparer) { if (item == null) return 0x1786E23C; else return equalityComparer.GetHashCode(item); } } }