Example #1
0
        static ErrorFacts()
        {
            ImmutableHashSet <string> .Builder builder = ImmutableHashSet.CreateBuilder <string>();
            builder.Add(getId(ErrorCode.WRN_NullReferenceAssignment));
            builder.Add(getId(ErrorCode.WRN_NullReferenceReceiver));
            builder.Add(getId(ErrorCode.WRN_NullReferenceReturn));
            builder.Add(getId(ErrorCode.WRN_NullReferenceArgument));
            builder.Add(getId(ErrorCode.WRN_NullReferenceIterationVariable));
            builder.Add(getId(ErrorCode.WRN_UninitializedNonNullableField));
            builder.Add(getId(ErrorCode.WRN_NullabilityMismatchInAssignment));
            builder.Add(getId(ErrorCode.WRN_NullabilityMismatchInArgument));
            builder.Add(getId(ErrorCode.WRN_NullabilityMismatchInArgumentForOutput));
            builder.Add(getId(ErrorCode.WRN_NullabilityMismatchInReturnTypeOfTargetDelegate));
            builder.Add(getId(ErrorCode.WRN_NullabilityMismatchInParameterTypeOfTargetDelegate));
            builder.Add(getId(ErrorCode.WRN_NullAsNonNullable));
            builder.Add(getId(ErrorCode.WRN_NullableValueTypeMayBeNull));
            builder.Add(getId(ErrorCode.WRN_NullabilityMismatchInTypeParameterConstraint));
            builder.Add(getId(ErrorCode.WRN_NullabilityMismatchInTypeParameterReferenceTypeConstraint));
            builder.Add(getId(ErrorCode.WRN_ThrowPossibleNull));
            builder.Add(getId(ErrorCode.WRN_UnboxPossibleNull));
            builder.Add(getId(ErrorCode.WRN_DefaultExpressionMayIntroduceNullT));
            builder.Add(getId(ErrorCode.WRN_NullLiteralMayIntroduceNullT));
            builder.Add(getId(ErrorCode.WRN_ConditionalAccessMayReturnNull));
            builder.Add(getId(ErrorCode.WRN_AsOperatorMayReturnNull));
            builder.Add(getId(ErrorCode.WRN_SwitchExpressionNotExhaustiveForNull));

            NullableFlowAnalysisSafetyWarnings = builder.ToImmutable();

            builder.Clear();
            builder.Add(getId(ErrorCode.WRN_ConvertingNullableToNonNullable));

            NullableFlowAnalysisNonSafetyWarnings = builder.ToImmutable();

            string getId(ErrorCode errorCode)
            {
                return(MessageProvider.Instance.GetIdForErrorCode((int)errorCode));
            }
        }
        public void ToImmutableHashSet()
        {
            ImmutableHashSet <int> .Builder builder = ImmutableHashSet.CreateBuilder <int>();
            builder.Add(1);
            builder.Add(2);
            builder.Add(3);

            var set = builder.ToImmutableSortedSet();

            Assert.True(builder.Contains(1));
            Assert.True(builder.Contains(2));
            Assert.True(builder.Contains(3));

            builder.Remove(3);
            Assert.False(builder.Contains(3));
            Assert.True(set.Contains(3));

            builder.Clear();
            Assert.True(builder.ToImmutableHashSet().IsEmpty);
            Assert.False(set.IsEmpty);

            ImmutableHashSet <int> .Builder nullBuilder = null;
            AssertExtensions.Throws <ArgumentNullException>("builder", () => nullBuilder.ToImmutableHashSet());
        }
 public static ImmutableHashSet <T> ResetContents <T>(this ImmutableHashSet <T> set, IEnumerable <T> values)
 {
     return(set.SetEquals(values) ? set : set.Clear().Union(values));
 }
Example #4
0
 /// <inheritdoc />
 public IImmutableSet <T> Clear()
 {
     return(new SetEqualedReadOnlySet <T>(_set.Clear()));
 }
 public void Clear()
 => whitelistedFiles = whitelistedFiles.Clear();
Example #6
0
 public void Clear() => set.Clear();
 protected override ImmutableHashSet <T> Clear(ImmutableHashSet <T> values, ISerializationContext context)
 => values.Clear();