コード例 #1
0
ファイル: Pair.cs プロジェクト: Thomasb81/Surelog
        public override int GetHashCode()
        {
            int hash = MurmurHash.Initialize();

            hash = MurmurHash.Update(hash, a);
            hash = MurmurHash.Update(hash, b);
            return(MurmurHash.Finish(hash, 2));
        }
コード例 #2
0
        public override int GetHashCode()
        {
            int hash = MurmurHash.Initialize(1);

            foreach (T t in this)
            {
                hash = MurmurHash.Update(hash, t.GetHashCode());
            }
            hash = MurmurHash.Finish(hash, this.Count);
            return(hash);
        }
コード例 #3
0
        public override int GetHashCode()
        {
            int hash = MurmurHash.Initialize();

            foreach (Interval I in intervals)
            {
                hash = MurmurHash.Update(hash, I.a);
                hash = MurmurHash.Update(hash, I.b);
            }
            hash = MurmurHash.Finish(hash, intervals.Count * 2);
            return(hash);
        }
コード例 #4
0
ファイル: Array2DHashSet`1.cs プロジェクト: tnsr1/antlr4cs
        public override int GetHashCode()
        {
            int hash = MurmurHash.Initialize();

            foreach (T[] bucket in buckets)
            {
                if (bucket == null)
                {
                    continue;
                }
                foreach (T o in bucket)
                {
                    if (o == null)
                    {
                        break;
                    }
                    hash = MurmurHash.Update(hash, comparator.GetHashCode(o));
                }
            }
            hash = MurmurHash.Finish(hash, Count);
            return(hash);
        }