示例#1
0
        public override int GetHashCode()
        {
            var hashCode = new RoslynHashCode();

            HashUtilities.Combine(this.InterfaceInfos, ref hashCode);
            HashUtilities.Combine(this.ConcreteInfos, ref hashCode);
            return(hashCode.ToHashCode());
        }
        public override int GetHashCode()
        {
            var hashCode = new RoslynHashCode();

            HashUtilities.Combine(PropertyAbstractValues, ref hashCode);
            hashCode.Add(MapFromValueContentAbstractValue.GetHashCodeOrDefault());
            hashCode.Add(MapFromPointsToAbstractValue.GetHashCodeOrDefault());
            return(hashCode.ToHashCode());
        }
示例#3
0
        public override int GetHashCode()
        {
            var hashCode = new RoslynHashCode();

            HashUtilities.Combine(this.ConcreteInfos, ref hashCode);
            HashUtilities.Combine(this.InterfaceInfos, ref hashCode);
            hashCode.Add(this.RequiresValueContentAnalysis.GetHashCode());
            hashCode.Add(this.RequiresParameterReferenceAnalysis.GetHashCode());
            hashCode.Add(this.RequiresFieldReferenceAnalysis.GetHashCode());
            return(hashCode.ToHashCode());
        }
示例#4
0
        public override int GetHashCode()
        {
            var hashCode = new RoslynHashCode();

            HashUtilities.Combine(this.SinkProperties, ref hashCode);
            HashUtilities.Combine(this.SinkMethodParameters, ref hashCode);
            hashCode.Add(StringComparer.Ordinal.GetHashCode(this.FullTypeName));
            HashUtilities.Combine(this.SinkKinds, ref hashCode);
            hashCode.Add(this.IsInterface.GetHashCode());
            hashCode.Add(this.IsAnyStringParameterInConstructorASink.GetHashCode());
            return(hashCode.ToHashCode());
        }
        public override int GetHashCode()
        {
            var hashCode = new RoslynHashCode();

            HashUtilities.Combine(InterproceduralCallStack, ref hashCode);
            hashCode.Add(BasicBlockOrdinal.GetHashCode());
            hashCode.Add(HandlingCatchRegion.GetHashCodeOrDefault());
            hashCode.Add(ContainingFinallyRegion.GetHashCodeOrDefault());
            hashCode.Add(ExceptionType.GetHashCode());
            hashCode.Add(IsDefaultExceptionForExceptionsPathAnalysis.GetHashCode());
            return(hashCode.ToHashCode());
        }
示例#6
0
        private int GetOrComputeHashCode()
        {
            if (_lazyHashCode == 0)
            {
                var hashCode = new RoslynHashCode();
                ComputeHashCodeParts(ref hashCode);
                var result = hashCode.ToHashCode();
                Interlocked.CompareExchange(ref _lazyHashCode, result, 0);
            }

            return(_lazyHashCode);
        }