示例#1
0
        public override bool Equals(object obj)
        {
            var edge = obj as CallGraphEdge;

            return(edge != null &&
                   OperationName.Equals(edge.OperationName) &&
                   OperationCallerName.Equals(edge.OperationCallerName) &&
                   FunctorSpecialization == edge.FunctorSpecialization &&
                   CallerFunctorSpecialization == edge.CallerFunctorSpecialization);
        }
示例#2
0
        private int InternalHashCode()
        {
            var       hashCode = 419446955;
            const int hashSeed = -1521134295;

            hashCode = hashCode * hashSeed + OperationName.GetHashCode();
            hashCode = hashCode * hashSeed + OperationCallerName.GetHashCode();
            hashCode = hashCode * hashSeed + EqualityComparer <OperationFunctor> .Default.GetHashCode(FunctorSpecialization);

            hashCode = hashCode * hashSeed + EqualityComparer <OperationFunctor> .Default.GetHashCode(CallerFunctorSpecialization);

            return(hashCode);
        }