1 write to Type
Microsoft.CodeAnalysis.AnalyzerUtilities (1)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntity.cs (1)
60Type = type;
51 references to Type
Microsoft.CodeAnalysis.AnalyzerUtilities (51)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\CopyAnalysis\CopyAbstractValue.cs (3)
25Debug.Assert(kind != CopyAbstractValueKind.KnownReferenceCopy || analysisEntities.All(a => !a.Type.IsValueType)); 29!analysisEntities.First().Type.IsValueType) 46kind: analysisEntity.Type.IsReferenceType ? CopyAbstractValueKind.KnownReferenceCopy : CopyAbstractValueKind.KnownValueCopy)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\CopyAnalysis\CopyAnalysis.CopyDataFlowOperationVisitor.cs (4)
203newKind = analysisEntity.Type.IsValueType ? 210!analysisEntity.Type.IsValueType && 263else if (assignedValue.AnalysisEntity == null || assignedValue.AnalysisEntity.Type.IsValueType) 491if (entity.Type.HasValueCopySemantics())
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\DefaultPointsToValueGenerator.cs (1)
37else if (analysisEntity.Type.IsNonNullableValueType())
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.cs (1)
102if (!ShouldBeTracked(analysisEntity.Type, isDisposable) &&
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.PointsToDataFlowOperationVisitor.cs (7)
94return !PointsToAnalysis.ShouldBeTracked(analysisEntity.Type, IsDisposable) ? 296var location = AbstractLocation.CreateAllocationLocation(operation, analysisEntity.Type, DataFlowAnalysisContext); 418SetValueForNullCompareFromPredicate(analysisEntity, value, targetEntity.Type, equals, inferInTargetAnalysisData, 425SetValueForNullCompareFromPredicate(targetEntity, value, targetEntity.Type, equals, inferInTargetAnalysisData, 517if (!SymbolEqualityComparer.Default.Equals(targetType, analysisEntity.Type)) 519var conversion = compilation.ClassifyCommonConversion(targetType, analysisEntity.Type); 665if (escapedEntity?.Type.HasValueCopySemantics() == true)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AbstractLocation.cs (1)
61=> Create(creation: null, creationCallStack: null, analysisEntity: analysisEntity, symbol: null, captureId: null, locationType: analysisEntity.Type);
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AddressSharedEntitiesProvider.cs (1)
50var isReferenceCopy = !addressSharedEntities.Any(a => a.Type.IsValueType);
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntity.cs (12)
28/// 1. An associated non-null <see cref="Type"/> and 51Debug.Assert(parent == null || parent.Type.HasValueCopySemantics() || !indices.IsEmpty); 132return new AnalysisEntity(Symbol, Indices, InstanceReferenceOperationSyntax, CaptureId, mergedInstanceLocation, Type, Parent, EntityForInstanceLocation, IsThisOrMeInstance); 186return Parent != null && Parent.Type.HasValueCopySemantics(); 217=> new(Symbol, indices, InstanceReferenceOperationSyntax, CaptureId, InstanceLocation, Type, Parent, EntityForInstanceLocation, IsThisOrMeInstance); 238&& Type.GetHashCodeOrDefault() == other.Type.GetHashCodeOrDefault() 265hashCode.Add(Type.GetHashCode()); 295=> Type.SpecialType == SpecialType.System_Boolean || 296Type.IsNullableOfBoolean() || 297Type.Language == LanguageNames.VisualBasic && Type.SpecialType == SpecialType.System_Object;
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntityDataFlowOperationVisitor.cs (12)
146if (analysisEntity.Type.HasValueCopySemantics()) 240if (tupleElementEntity.Type.IsTupleType) 268targetAnalysisEntity.Type.HasValueCopySemantics()) 310SetAbstractValue(analysisEntity, GetDefaultValueForParameterOnExit(analysisEntity.Type)); 329Debug.Assert(analysisEntity.Type.HasValueCopySemantics()); 363Debug.Assert(targetAnalysisEntity.Type.HasValueCopySemantics()); 368if (!valueAnalysisEntity.Type.HasValueCopySemantics()) 401if (!HasCompletePointsToAnalysisResult && analysisEntity.Type.IsReferenceType) 411Debug.Assert(analysisEntity.Type.HasValueCopySemantics()); 424return (!ancestorEntity.Type.HasValueCopySemantics() || entity.HasAncestor(ancestorEntity)) && 802SymbolEqualityComparer.Default.Equals(tupleElementEntity.Type.OriginalDefinition, childEntity.Type.OriginalDefinition);
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntityFactory.cs (5)
211analysisEntity.Type.IsValueType == capturedEntity.Type.IsValueType) 224var kind = capturedEntity.Type.IsValueType ? CopyAbstractValueKind.KnownValueCopy : CopyAbstractValueKind.KnownReferenceCopy; 462instanceEntityOpt.Type.IsValueType) 577return Create(analysisEntity.Symbol, analysisEntity.Indices, analysisEntity.Type, newRootInstance.InstanceLocation, parentOpt, newRootInstance.EntityForInstanceLocation);
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowOperationVisitor.cs (4)
1727!analysisEntity.Type.HasValueCopySemantics() && 1728(analysisEntity.Type as INamedTypeSymbol)?.OverridesEquals() == false); 2031if (analysisEntity.Type.HasValueCopySemantics()) 3655if (AnalysisEntityFactory.ThisOrMeInstance.Type.HasValueCopySemantics())