public int GetHashCode()

in Microsoft.Shared.Dna.Hash/AffineHash.cs [186:209]


        public int GetHashCode(char[] value, int offset, int length)
        {
#if CONTRACTS_FULL // Work around the implicit rewrite requirements of Contract.Requires<T>
            Contract.Requires<ArgumentNullException>(value != null);
            Contract.Requires<ArgumentOutOfRangeException>(offset >= 0);
            Contract.Requires<ArgumentOutOfRangeException>(length >= 0);
            Contract.Requires<ArgumentOutOfRangeException>(offset + length <= value.Length);
#endif
            unsafe
            {
                fixed (char* valuePointer = value)
                {
                    char* offsetPointer = valuePointer + offset;
                    if (BitConverter.IsLittleEndian)
                    {
                        return this.GetHashCodeLittleEndian(offsetPointer, length);
                    }
                    else
                    {
                        return this.GetHashCodeBigEndian(offsetPointer, length);
                    }
                }
            }
        }