109 references to ControlFlowConditionKind
GenerateDocumentationAndConfigFiles (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
ILLink.RoslynAnalyzer (4)
DataFlow\ControlFlowGraphProxy.cs (3)
83ControlFlowConditionKind.None => ConditionKind.Unconditional, 84ControlFlowConditionKind.WhenFalse => branch.IsConditionalSuccessor ? ConditionKind.WhenFalse : ConditionKind.WhenTrue, 85ControlFlowConditionKind.WhenTrue => branch.IsConditionalSuccessor ? ConditionKind.WhenTrue : ConditionKind.WhenFalse,
DataFlow\LocalDataFlowVisitor.cs (1)
92if (block.Block.ConditionKind != ControlFlowConditionKind.None)
Metrics (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Metrics.Legacy (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Microsoft.CodeAnalysis (7)
Operations\BasicBlock.cs (2)
32ControlFlowConditionKind conditionKind, 68public ControlFlowConditionKind ConditionKind { get; }
Operations\ControlFlowGraphBuilder.BasicBlockBuilder.cs (2)
28public ControlFlowConditionKind ConditionKind; 115bool result = ConditionKind != ControlFlowConditionKind.None;
Operations\ControlFlowGraphBuilder.cs (3)
278if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue)) 2973previous.ConditionKind = jumpIfTrue ? ControlFlowConditionKind.WhenTrue : ControlFlowConditionKind.WhenFalse;
Microsoft.CodeAnalysis.Analyzers (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Microsoft.CodeAnalysis.AnalyzerUtilities (63)
src\RoslynAnalyzers\Utilities\FlowAnalysis\BranchWithInfo.cs (6)
35controlFlowConditionKind: ControlFlowConditionKind.None, 48ControlFlowConditionKind controlFlowConditionKind, 70public ControlFlowConditionKind ControlFlowConditionKind { get; } 91ControlFlowConditionKind controlFlowConditionKind) 121private static ControlFlowConditionKind GetControlFlowConditionKind(ControlFlowBranch branch) 124branch.Source.ConditionKind == ControlFlowConditionKind.None)
src\RoslynAnalyzers\Utilities\FlowAnalysis\Extensions\ControlFlowConditionKindExtensions.cs (6)
11public static ControlFlowConditionKind Negate(this ControlFlowConditionKind controlFlowConditionKind) 15case ControlFlowConditionKind.WhenFalse: 16return ControlFlowConditionKind.WhenTrue; 18case ControlFlowConditionKind.WhenTrue: 19return ControlFlowConditionKind.WhenFalse;
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\DisposeAnalysis\DisposeAnalysis.DisposeDataFlowOperationVisitor.cs (4)
340else if (FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse && 452var isNullEqualsOnWhenTrue = FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue && 460var isNullNotEqualsOnWhenFalse = FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse && 486if (FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\GlobalFlowStateAnalysis\GlobalFlowStateValueSetFlowOperationVisitor.cs (2)
31branch.ControlFlowConditionKind != ControlFlowConditionKind.None && 36var negate = branch.ControlFlowConditionKind == ControlFlowConditionKind.WhenFalse;
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\ParameterValidationAnalysis\ParameterValidationAnalysis.ParameterValidationDataFlowOperationVisitor.cs (5)
395var isNullNotEqualsOnWhenTrue = FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue && 403var isNullEqualsOnWhenFalse = FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse && 440if (FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse && 447if (FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue && 462if (FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowAnalysis.cs (4)
87using var _4 = PooledDictionary<int, (int Ordinal, ControlFlowConditionKind BranchKind)?>.GetInstance(out var blockToUniqueInputFlowMap); 193PooledDictionary<int, (int Ordinal, ControlFlowConditionKind BranchKind)?> blockToUniqueInputFlowMap, 389var blockToSuccessorBranchKind = successorWithBranch.ControlFlowConditionKind; 672var successor = branch.With(branchValue: null, controlFlowConditionKind: ControlFlowConditionKind.None);
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowOperationVisitor.cs (34)
196protected ControlFlowConditionKind FlowBranchConditionKind { get; private set; } 694if (branch.ControlFlowConditionKind != ControlFlowConditionKind.None) 714FlowBranchConditionKind = ControlFlowConditionKind.None; 745Debug.Assert(branch.ControlFlowConditionKind != ControlFlowConditionKind.None); 751if (alwaysTrue && branch.ControlFlowConditionKind == ControlFlowConditionKind.WhenFalse || 752!alwaysTrue && branch.ControlFlowConditionKind == ControlFlowConditionKind.WhenTrue) 788Debug.Assert(branch.ControlFlowConditionKind != ControlFlowConditionKind.None); 792PredicateValueKind.AlwaysFalse => branch.ControlFlowConditionKind == ControlFlowConditionKind.WhenTrue, 794PredicateValueKind.AlwaysTrue => branch.ControlFlowConditionKind == ControlFlowConditionKind.WhenFalse, 1397if (FlowBranchConditionKind == ControlFlowConditionKind.None || !IsRootOfCondition()) 1419FlowBranchConditionKind = ControlFlowConditionKind.WhenTrue; 1422FlowBranchConditionKind = ControlFlowConditionKind.None; 1451FlowBranchConditionKind = ControlFlowConditionKind.WhenTrue; 1456FlowBranchConditionKind = ControlFlowConditionKind.WhenFalse; 1459FlowBranchConditionKind = ControlFlowConditionKind.None; 1547Debug.Assert(FlowBranchConditionKind != ControlFlowConditionKind.None); 1554predicateValueKind = SetValueForIsNullComparisonOperator(isNullOperation.Operand, equals: FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue, targetAnalysisData: targetAnalysisData); 1569predicateValueKind = SetValueForIsNullComparisonOperator(isPatternOperation.Pattern, equals: FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse, targetAnalysisData: targetAnalysisData); 1574if (FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue) 1584if (FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue) 1594equals: FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue, isReferenceEquality: false, targetAnalysisData: targetAnalysisData); 1602equals: FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse, isReferenceEquality: false, targetAnalysisData: targetAnalysisData); 1609if (FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue) 1621if (FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse) 1629else if (FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue) 1692predicateValueKind = ApplyPredicatedDataForEntity(targetAnalysisData, flowCaptureReferenceEntity, trueData: FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue); 1707if (invocation.Arguments.Length == 1 && FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse) 1751equals: FlowBranchConditionKind == ControlFlowConditionKind.WhenTrue, 1832if (FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse) 1854Debug.Assert(FlowBranchConditionKind != ControlFlowConditionKind.None); 1886if (FlowBranchConditionKind == ControlFlowConditionKind.WhenFalse) 3079Debug.Assert(FlowBranchConditionKind == ControlFlowConditionKind.None); 3082FlowBranchConditionKind = ControlFlowConditionKind.WhenTrue; 3084FlowBranchConditionKind = ControlFlowConditionKind.None;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Microsoft.CodeAnalysis.BannedApiAnalyzers (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Microsoft.CodeAnalysis.CodeStyle (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Microsoft.CodeAnalysis.PublicApiAnalyzers (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Microsoft.CodeAnalysis.ResxSourceGenerator (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Microsoft.CodeAnalysis.Test.Utilities (9)
Compilation\ControlFlowGraphVerifier.cs (7)
202Assert.NotEqual(ControlFlowConditionKind.None, predecessor.ConditionKind); 243if (block.ConditionKind != ControlFlowConditionKind.None) 258Assert.True(block.ConditionKind == ControlFlowConditionKind.WhenTrue || block.ConditionKind == ControlFlowConditionKind.WhenFalse); 259string jumpIfTrue = block.ConditionKind == ControlFlowConditionKind.WhenTrue ? "True" : "False"; 272Assert.Equal(ControlFlowConditionKind.None, block.ConditionKind); 301IOperation value = block.ConditionKind == ControlFlowConditionKind.None ? block.BranchValue : null;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Microsoft.CodeAnalysis.Workspaces (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Roslyn.Diagnostics.Analyzers (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Test.Utilities (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))
Text.Analyzers (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (2)
142if (current.ConditionKind != ControlFlowConditionKind.None) 150if (constant == (current.ConditionKind == ControlFlowConditionKind.WhenTrue))