6 instantiations of FeatureContext
ILLink.RoslynAnalyzer (6)
DataFlow\FeatureContextLattice.cs (5)
20
public static readonly FeatureContext All = new
FeatureContext
(ValueSet<string>.Unknown);
22
public static readonly FeatureContext None = new
FeatureContext
(ValueSet<string>.Empty);
43
return new
FeatureContext
(EnabledFeatures.DeepCopy ());
48
return new
FeatureContext
(ValueSet<string>.Intersection (EnabledFeatures, other.EnabledFeatures));
53
return new
FeatureContext
(ValueSet<string>.Union (EnabledFeatures, other.EnabledFeatures));
TrimAnalysis\TrimAnalysisVisitor.cs (1)
69
currentState.Context = currentState.Context.Union (new
FeatureContext
(featureChecksValue.EnabledFeatures));
47 references to FeatureContext
ILLink.RoslynAnalyzer (47)
DataFlow\FeatureChecksVisitor.cs (1)
16
ILLink.RoslynAnalyzer.DataFlow.
FeatureContext
,
DataFlow\FeatureContextLattice.cs (21)
14
public struct FeatureContext : IEquatable<
FeatureContext
>, IDeepCopyValue<
FeatureContext
>
20
public static readonly
FeatureContext
All = new FeatureContext (ValueSet<string>.Unknown);
22
public static readonly
FeatureContext
None = new FeatureContext (ValueSet<string>.Empty);
34
public bool Equals (
FeatureContext
other) => EnabledFeatures == other.EnabledFeatures;
35
public override bool Equals (object? obj) => obj is
FeatureContext
other && Equals (other);
38
public static bool operator == (
FeatureContext
left,
FeatureContext
right) => left.Equals (right);
39
public static bool operator != (
FeatureContext
left,
FeatureContext
right) => !left.Equals (right);
41
public
FeatureContext
DeepCopy ()
46
public
FeatureContext
Intersection (
FeatureContext
other)
51
public
FeatureContext
Union (
FeatureContext
other)
66
public readonly struct FeatureContextLattice : ILattice<
FeatureContext
>
71
public
FeatureContext
Top { get; } =
FeatureContext
.All;
75
public
FeatureContext
Meet (
FeatureContext
left,
FeatureContext
right) => left.Intersection (right);
RequiresAnalyzerBase.cs (1)
334
FeatureContext
featureContext,
TrimAnalysis\TrimAnalysisAssignmentPattern.cs (2)
24
public
FeatureContext
FeatureContext { get; init; }
31
FeatureContext
featureContext)
TrimAnalysis\TrimAnalysisFieldAccessPattern.cs (2)
18
public
FeatureContext
FeatureContext { get; init; }
24
FeatureContext
featureContext)
TrimAnalysis\TrimAnalysisGenericInstantiationPattern.cs (2)
17
public
FeatureContext
FeatureContext { get; init; }
23
FeatureContext
featureContext)
TrimAnalysis\TrimAnalysisMethodCallPattern.cs (2)
22
public
FeatureContext
FeatureContext { get; init; }
30
FeatureContext
featureContext)
TrimAnalysis\TrimAnalysisReflectionAccessPattern.cs (2)
17
public
FeatureContext
FeatureContext { get; init; }
23
FeatureContext
feature)
TrimAnalysis\TrimAnalysisVisitor.cs (11)
21
ILLink.RoslynAnalyzer.DataFlow.
FeatureContext
,
30
FeatureContext
,
48
LocalStateAndContextLattice<MultiValue,
FeatureContext
, ValueSetLattice<SingleValue>, FeatureContextLattice> lattice,
67
public override void ApplyCondition (FeatureChecksValue featureChecksValue, ref LocalStateAndContext<MultiValue,
FeatureContext
> currentState)
218
public override MultiValue GetFieldTargetValue (IFieldSymbol field, IFieldReferenceOperation fieldReferenceOperation, in
FeatureContext
featureContext)
232
public override void HandleAssignment (MultiValue source, MultiValue target, IOperation operation, in
FeatureContext
featureContext)
282
in
FeatureContext
featureContext)
340
public override void HandleReturnValue (MultiValue returnValue, IOperation operation, in
FeatureContext
featureContext)
378
public override MultiValue HandleDelegateCreation (IMethodSymbol method, IOperation operation, in
FeatureContext
featureContext)
392
private void ProcessGenericArgumentDataFlow (IMethodSymbol method, IOperation operation, in
FeatureContext
featureContext)
409
private void ProcessGenericArgumentDataFlow (IFieldSymbol field, IOperation operation, in
FeatureContext
featureContext)
TrimAnalysis\TrimDataFlowAnalysis.cs (3)
18
ILLink.RoslynAnalyzer.DataFlow.
FeatureContext
26
FeatureContext
,
49
initialContext:
FeatureContext
.None)