5 instantiations of PointsToAnalysisData
Microsoft.CodeAnalysis.AnalyzerUtilities (5)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.PointsToAnalysisDomain.cs (1)
46
return new
PointsToAnalysisData
(mergedCoreAnalysisData, forwardEdgeAnalysisData,
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.PointsToDataFlowOperationVisitor.cs (2)
585
=>
new
(IsDisposable);
587
=>
new
(analysisResult.ExitBlockOutput.Data, IsDisposable);
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysisData.cs (2)
69
public override AnalysisEntityBasedPredicateAnalysisData<PointsToAbstractValue> Clone() => new
PointsToAnalysisData
(this);
77
var mergedData = new
PointsToAnalysisData
(this, (PointsToAnalysisData)data, coreDataAnalysisDomain);
72 references to PointsToAnalysisData
Microsoft.CodeAnalysis.AnalyzerUtilities (72)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.CorePointsToAnalysisDataDomain.cs (7)
15
public partial class PointsToAnalysis : ForwardDataFlowAnalysis<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToBlockAnalysisResult, PointsToAbstractValue>
47
PointsToAnalysisData
.AssertValidPointsToAnalysisKeyValuePair(analysisEntity, value, _isDisposable);
52
PointsToAnalysisData
.AssertValidPointsToAnalysisData(map, _isDisposable);
56
PointsToAnalysisData
forwardEdgeAnalysisData,
57
PointsToAnalysisData
backEdgeAnalysisData,
59
Action<AnalysisEntity,
PointsToAnalysisData
> resetAbstractValue)
63
forwardEdgeAnalysisData = (
PointsToAnalysisData
)forwardEdgeAnalysisData.Clone();
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.cs (3)
21
public partial class PointsToAnalysis : ForwardDataFlowAnalysis<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToBlockAnalysisResult, PointsToAbstractValue>
113
internal static void AssertValidPointsToAnalysisData(
PointsToAnalysisData
data)
128
protected override PointsToBlockAnalysisResult ToBlockResult(BasicBlock basicBlock,
PointsToAnalysisData
blockAnalysisData)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.NullAbstractValueDomain.cs (1)
9
public partial class PointsToAnalysis : ForwardDataFlowAnalysis<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToBlockAnalysisResult, PointsToAbstractValue>
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.PointsToAbstractValueDomain.cs (1)
9
public partial class PointsToAnalysis : ForwardDataFlowAnalysis<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToBlockAnalysisResult, PointsToAbstractValue>
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.PointsToAnalysisDomain.cs (9)
11
public partial class PointsToAnalysis : ForwardDataFlowAnalysis<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToBlockAnalysisResult, PointsToAbstractValue>
14
/// An abstract analysis domain implementation for <see cref="
PointsToAnalysisData
"/> tracked by <see cref="PointsToAnalysis"/>.
16
private sealed class PointsToAnalysisDomain : PredicatedAnalysisDataDomain<
PointsToAnalysisData
, PointsToAbstractValue>
23
public
PointsToAnalysisData
MergeAnalysisDataForBackEdge(
24
PointsToAnalysisData
forwardEdgeAnalysisData,
25
PointsToAnalysisData
backEdgeAnalysisData,
27
Action<AnalysisEntity,
PointsToAnalysisData
> resetAbstractValue,
32
return (
PointsToAnalysisData
)backEdgeAnalysisData.Clone();
36
return (
PointsToAnalysisData
)forwardEdgeAnalysisData.Clone();
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysis.PointsToDataFlowOperationVisitor.cs (42)
20
public partial class PointsToAnalysis : ForwardDataFlowAnalysis<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToBlockAnalysisResult, PointsToAbstractValue>
26
PredicateAnalysisEntityDataFlowOperationVisitor<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToAbstractValue>
99
public override
PointsToAnalysisData
Flow(IOperation statement, BasicBlock block,
PointsToAnalysisData
input)
117
var
output = base.Flow(statement, block, input);
122
public override (
PointsToAnalysisData
output, bool isFeasibleBranch) FlowBranch(BasicBlock fromBlock, BranchWithInfo branch,
PointsToAnalysisData
input)
125
(
PointsToAnalysisData
output, bool isFeasibleBranch) result = base.FlowBranch(fromBlock, branch, input);
130
protected override void AddTrackedEntities(
PointsToAnalysisData
analysisData, HashSet<AnalysisEntity> builder, bool forInterproceduralAnalysis)
151
protected override void StopTrackingEntity(AnalysisEntity analysisEntity,
PointsToAnalysisData
analysisData)
173
protected override bool HasAnyAbstractValue(
PointsToAnalysisData
data) => data.HasAnyAbstractValue;
209
private static void SetAbstractValueCore(
PointsToAnalysisData
pointsToAnalysisData, AnalysisEntity analysisEntity, PointsToAbstractValue value)
233
private static void ResetAbstractValueIfTracked(AnalysisEntity analysisEntity,
PointsToAnalysisData
pointsToAnalysisData)
365
PointsToAnalysisData
targetAnalysisData)
380
protected override PredicateValueKind SetValueForIsNullComparisonOperator(IOperation leftOperand, bool equals,
PointsToAnalysisData
targetAnalysisData)
392
PointsToAnalysisData
targetAnalysisData)
403
PointsToAnalysisData
targetAnalysisData)
446
PointsToAnalysisData
sourceAnalysisData,
447
PointsToAnalysisData
targetAnalysisData)
508
PointsToAnalysisData
sourceAnalysisData,
509
PointsToAnalysisData
targetAnalysisData)
576
protected override
PointsToAnalysisData
MergeAnalysisData(
PointsToAnalysisData
value1,
PointsToAnalysisData
value2)
578
protected override
PointsToAnalysisData
MergeAnalysisDataForBackEdge(
PointsToAnalysisData
value1,
PointsToAnalysisData
value2, BasicBlock forBlock)
580
protected override void UpdateValuesForAnalysisData(
PointsToAnalysisData
targetAnalysisData)
582
protected override
PointsToAnalysisData
GetClonedAnalysisData(
PointsToAnalysisData
analysisData)
583
=> (
PointsToAnalysisData
)analysisData.Clone();
584
public override
PointsToAnalysisData
GetEmptyAnalysisData()
586
protected override
PointsToAnalysisData
GetExitBlockOutputData(PointsToAnalysisResult analysisResult)
588
protected override void ApplyMissingCurrentAnalysisDataForUnhandledExceptionData(
PointsToAnalysisData
dataAtException, ThrownExceptionInfo throwBranchWithExceptionType)
590
protected override void AssertValidAnalysisData(
PointsToAnalysisData
analysisData)
592
protected override bool Equals(
PointsToAnalysisData
value1,
PointsToAnalysisData
value2)
595
protected override void ApplyInterproceduralAnalysisResultCore(
PointsToAnalysisData
resultData)
601
protected override
PointsToAnalysisData
GetTrimmedCurrentAnalysisData(IEnumerable<AnalysisEntity> withEntities)
603
var
trimmedData = GetTrimmedCurrentAnalysisDataHelper(withEntities, CurrentAnalysisData.CoreAnalysisData, SetAbstractValueCore);
608
protected override
PointsToAnalysisData
GetInitialInterproceduralAnalysisData(
620
var
initialAnalysisData = base.GetInitialInterproceduralAnalysisData(invokedMethod,
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysisContext.cs (3)
15
using InterproceduralPointsToAnalysisData = InterproceduralAnalysisData<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAbstractValue>;
21
public sealed class PointsToAnalysisContext : AbstractDataFlowAnalysisContext<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToAbstractValue>
89
protected override bool ComputeEqualsByHashCodeParts(AbstractDataFlowAnalysisContext<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToAbstractValue> obj)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToAnalysisData.cs (5)
50
private PointsToAnalysisData(
PointsToAnalysisData
fromData)
58
private PointsToAnalysisData(
PointsToAnalysisData
data1,
PointsToAnalysisData
data2, MapAbstractDomain<AnalysisEntity, PointsToAbstractValue> coreDataAnalysisDomain)
77
var
mergedData = new PointsToAnalysisData(this, (
PointsToAnalysisData
)data, coreDataAnalysisDomain);
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\PointsToAnalysis\PointsToBlockAnalysisResult.cs (1)
15
internal PointsToBlockAnalysisResult(BasicBlock basicBlock,
PointsToAnalysisData
blockAnalysisData)