1 implementation of AreEquivalent
Microsoft.CodeAnalysis.CSharp.Workspaces (1)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (1)
1281public bool AreEquivalent(SyntaxNode? node1, SyntaxNode? node2)
24 references to AreEquivalent
Microsoft.CodeAnalysis.CSharp.Features (1)
src\Analyzers\CSharp\Analyzers\UseCollectionInitializer\CSharpUseCollectionInitializerAnalyzer.cs (1)
186var matchIndex = spreadElements.FindIndex(SyntaxFacts.AreEquivalent, current);
Microsoft.CodeAnalysis.Features (23)
CodeRefactorings\MoveType\AbstractMoveTypeService.MoveTypeEditor.cs (1)
102n => movedImports.Contains(i => syntaxFacts.AreEquivalent(i, n)),
CodeRefactorings\SyncNamespace\AbstractChangeNamespaceService.cs (1)
846import => importsToRemove.Any(importToRemove => syntaxFacts.AreEquivalent(importToRemove, import)),
ConvertForToForEach\AbstractConvertForToForEachCodeRefactoringProvider.cs (5)
201if (syntaxFacts.AreEquivalent(expr, collectionExpression)) 220syntaxFacts.AreEquivalent(accessedExpression, collectionExpression)) 404if (syntaxFacts.AreEquivalent(firstVariableInitializer, indexExpression)) 424if (syntaxFacts.AreEquivalent(current.Parent, indexExpression)) 430else if (syntaxFacts.AreEquivalent(current.Parent?.Parent, elementAtExpression))
ConvertIfToSwitch\AbstractConvertIfToSwitchCodeRefactoringProvider.Analyzer.cs (2)
393=> _syntaxFacts.AreEquivalent(left.Syntax, right.Syntax) && this.CheckTargetExpression(left); 468return _syntaxFacts.AreEquivalent(expression, _switchTargetExpression);
SplitOrMergeIfStatements\Consecutive\AbstractMergeConsecutiveIfStatementsCodeRefactoringProvider.cs (1)
257return statements1.SequenceEqual(statements2, syntaxFacts.AreEquivalent);
SplitOrMergeIfStatements\Nested\AbstractMergeNestedIfStatementsCodeRefactoringProvider.cs (3)
216if (!remainingStatements.SequenceEqual(remainingOuterStatements.Take(statements.Count - 1), syntaxFacts.AreEquivalent)) 250if (!syntaxFacts.AreEquivalent(condition1, condition2)) 259return statements1.SequenceEqual(statements2, syntaxFacts.AreEquivalent);
src\Analyzers\Core\Analyzers\UseCoalesceExpression\AbstractUseCoalesceExpressionForIfNullCheckDiagnosticAnalyzer.cs (2)
227if (!syntaxFacts.AreEquivalent(topAssignmentLeft, checkedExpression)) 250return syntaxFacts.AreEquivalent(innerAssignmentLeft, checkedExpression);
src\Analyzers\Core\Analyzers\UseCoalesceExpression\AbstractUseCoalesceExpressionForNullableTernaryConditionalCheckDiagnosticAnalyzer.cs (1)
96if (!syntaxFacts.AreEquivalent(conditionExpression, whenPartExpression))
src\Analyzers\Core\Analyzers\UseCoalesceExpression\AbstractUseCoalesceExpressionForTernaryConditionalCheckDiagnosticAnalyzer.cs (1)
90if (!syntaxFacts.AreEquivalent(
src\Analyzers\Core\Analyzers\UseCollectionInitializer\UpdateExpressionState.cs (1)
95return SyntaxFacts.AreEquivalent(
src\Analyzers\Core\Analyzers\UseCompoundAssignment\AbstractUseCompoundAssignmentDiagnosticAnalyzer.cs (1)
115if (!_syntaxFacts.AreEquivalent(assignmentLeft, binaryLeft))
src\Analyzers\Core\Analyzers\UseConditionalExpression\ForAssignment\UseConditionalExpressionForAssignmentHelpers.cs (2)
53!syntaxFacts.AreEquivalent(trueAssignment.Target.Syntax, falseAssignment.Target.Syntax)) 190=> within?.DescendantNodes().Any(n => syntaxFacts.AreEquivalent(n, nullCheckedExpression)) is true;
src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer.cs (1)
357if (syntaxFacts.AreEquivalent(unwrapped, expressionToMatch))
src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer_IfStatement.cs (1)
76if (!syntaxFacts.AreEquivalent(assignLeft, conditionPartToCheck) ||