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)
583
=>
new
(IsDisposable);
585
=>
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)
18
public partial class PointsToAnalysis : ForwardDataFlowAnalysis<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToBlockAnalysisResult, PointsToAbstractValue>
24
PredicateAnalysisEntityDataFlowOperationVisitor<
PointsToAnalysisData
, PointsToAnalysisContext, PointsToAnalysisResult, PointsToAbstractValue>
97
public override
PointsToAnalysisData
Flow(IOperation statement, BasicBlock block,
PointsToAnalysisData
input)
115
var
output = base.Flow(statement, block, input);
120
public override (
PointsToAnalysisData
output, bool isFeasibleBranch) FlowBranch(BasicBlock fromBlock, BranchWithInfo branch,
PointsToAnalysisData
input)
123
(
PointsToAnalysisData
output, bool isFeasibleBranch) result = base.FlowBranch(fromBlock, branch, input);
128
protected override void AddTrackedEntities(
PointsToAnalysisData
analysisData, HashSet<AnalysisEntity> builder, bool forInterproceduralAnalysis)
149
protected override void StopTrackingEntity(AnalysisEntity analysisEntity,
PointsToAnalysisData
analysisData)
171
protected override bool HasAnyAbstractValue(
PointsToAnalysisData
data) => data.HasAnyAbstractValue;
207
private static void SetAbstractValueCore(
PointsToAnalysisData
pointsToAnalysisData, AnalysisEntity analysisEntity, PointsToAbstractValue value)
231
private static void ResetAbstractValueIfTracked(AnalysisEntity analysisEntity,
PointsToAnalysisData
pointsToAnalysisData)
363
PointsToAnalysisData
targetAnalysisData)
378
protected override PredicateValueKind SetValueForIsNullComparisonOperator(IOperation leftOperand, bool equals,
PointsToAnalysisData
targetAnalysisData)
390
PointsToAnalysisData
targetAnalysisData)
401
PointsToAnalysisData
targetAnalysisData)
444
PointsToAnalysisData
sourceAnalysisData,
445
PointsToAnalysisData
targetAnalysisData)
506
PointsToAnalysisData
sourceAnalysisData,
507
PointsToAnalysisData
targetAnalysisData)
574
protected override
PointsToAnalysisData
MergeAnalysisData(
PointsToAnalysisData
value1,
PointsToAnalysisData
value2)
576
protected override
PointsToAnalysisData
MergeAnalysisDataForBackEdge(
PointsToAnalysisData
value1,
PointsToAnalysisData
value2, BasicBlock forBlock)
578
protected override void UpdateValuesForAnalysisData(
PointsToAnalysisData
targetAnalysisData)
580
protected override
PointsToAnalysisData
GetClonedAnalysisData(
PointsToAnalysisData
analysisData)
581
=> (
PointsToAnalysisData
)analysisData.Clone();
582
public override
PointsToAnalysisData
GetEmptyAnalysisData()
584
protected override
PointsToAnalysisData
GetExitBlockOutputData(PointsToAnalysisResult analysisResult)
586
protected override void ApplyMissingCurrentAnalysisDataForUnhandledExceptionData(
PointsToAnalysisData
dataAtException, ThrownExceptionInfo throwBranchWithExceptionType)
588
protected override void AssertValidAnalysisData(
PointsToAnalysisData
analysisData)
590
protected override bool Equals(
PointsToAnalysisData
value1,
PointsToAnalysisData
value2)
593
protected override void ApplyInterproceduralAnalysisResultCore(
PointsToAnalysisData
resultData)
599
protected override
PointsToAnalysisData
GetTrimmedCurrentAnalysisData(IEnumerable<AnalysisEntity> withEntities)
601
var
trimmedData = GetTrimmedCurrentAnalysisDataHelper(withEntities, CurrentAnalysisData.CoreAnalysisData, SetAbstractValueCore);
606
protected override
PointsToAnalysisData
GetInitialInterproceduralAnalysisData(
618
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)