예제 #1
0
파일: Seed.cs 프로젝트: Ibasa/Ripple
        public override int GetHashCode()
        {
            var hash = new System.HashCode();

            hash.Add(_type);
            foreach (var b in UnsafeAsSpan(ref this))
            {
                hash.Add(b);
            }
            return(hash.ToHashCode());
        }
예제 #2
0
        /// <summary>
        /// 使用多个对象生成一个哈希值
        /// </summary>
        /// <param name="objs">用于计算哈希值的对象</param>
        /// <returns>最后生成的哈希值,
        /// 如果<paramref name="objs"/>中的所有元素全部相同,
        /// 则生成的哈希值也相同</returns>
        public static int CreateHash(params object[] objs)
        {
            var hash = new HashCode();

            foreach (var item in objs)
            {
                hash.Add(item);
            }
            return(hash.ToHashCode());
        }