257 references to EditKind
Microsoft.CodeAnalysis.CSharp.Features (42)
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (42)
1025EditKind editKind, 1066ref TemporaryArray<(ISymbol?, ISymbol?, EditKind)> result, 1067EditKind editKind, 1075IReadOnlyDictionary<SyntaxNode, EditKind> editMap, 1146result.Add((oldSymbol, newSymbol, isTypeConstraint ? EditKind.Update : editKind)); 1153case EditKind.Reorder: 1160result.Add((oldSymbol, newSymbol, EditKind.Update)); 1166result.Add((oldSymbol, newSymbol, EditKind.Reorder)); 1170case EditKind.Update: 1265result.Add((oldSymbol, newSymbol, EditKind.Update)); 1281result.Add((oldPrimaryConstructor, newPrimaryConstructor, EditKind.Update)); 1291result.Add((oldCopyConstructor, newCopyConstructor, EditKind.Update)); 1299case EditKind.Delete: 1300case EditKind.Insert: 1331result.Add((oldSymbol, newSymbol, EditKind.Update)); 1338result.Add((oldSymbol, newSymbol, EditKind.Update)); 1346result.Add((oldSymbol, newSymbol, EditKind.Update)); 1352case EditKind.Move: 1369if ((editKind == EditKind.Delete ? oldSymbol : newSymbol) is null) 1595protected override TextSpan? TryGetDiagnosticSpan(SyntaxNode node, EditKind editKind) 1598internal static new TextSpan GetDiagnosticSpan(SyntaxNode node, EditKind editKind) 1601private static TextSpan? TryGetDiagnosticSpanImpl(SyntaxNode node, EditKind editKind) 1605internal static TextSpan? TryGetDiagnosticSpanImpl(SyntaxKind kind, SyntaxNode node, EditKind editKind) 1615(editKind == EditKind.Delete ? globalStatements.LastOrDefault() : globalStatements.FirstOrDefault()) ?? 1732if (editKind == EditKind.Delete) 1990protected override string? TryGetDisplayName(SyntaxNode node, EditKind editKind) 1993internal static new string? GetDisplayName(SyntaxNode node, EditKind editKind) 1996internal static string? TryGetDisplayNameImpl(SyntaxNode node, EditKind editKind) 2263protected override string GetSuspensionPointDisplayName(SyntaxNode node, EditKind editKind) 2291private readonly EditKind _kind; 2299EditKind kind, 2345case EditKind.Delete: 2349case EditKind.Update: 2353case EditKind.Move: 2357case EditKind.Insert: 2361case EditKind.Reorder: 2489Dictionary<SyntaxNode, EditKind> editMap) 2573GetDiagnosticSpan(newNode, EditKind.Insert), 2575arguments: [GetDisplayName(newNode, EditKind.Insert)])); 2646Debug.Assert(edit.Kind != EditKind.Update || edit.OldNode.RawKind == edit.NewNode.RawKind); 2648if (edit.Kind != EditKind.Update || !AreExceptionClausesEquivalent(edit.OldNode, edit.NewNode)) 2903GetDiagnosticSpan(newSwitch, EditKind.Update),
Microsoft.CodeAnalysis.CSharp.Features.UnitTests (24)
EditAndContinue\CSharpEditAndContinueAnalyzerTests.cs (2)
57var actual = CSharpEditAndContinueAnalyzer.GetDiagnosticSpan(node, EditKind.Update); 95span = CSharpEditAndContinueAnalyzer.TryGetDiagnosticSpanImpl(kind, null, EditKind.Update);
EditAndContinue\TopLevelEditingTests.cs (22)
10458edits.VerifyEdits(EditKind.Reorder); 10489edits.VerifyEdits(EditKind.Reorder); 10525edits.VerifyEdits(EditKind.Reorder); 18859edits.VerifyEdits(EditKind.Reorder); 18889edits.VerifyEdits(EditKind.Reorder); 18920edits.VerifyEdits(EditKind.Reorder, EditKind.Update); 18950edits.VerifyEdits(EditKind.Reorder, EditKind.Update); 18985edits.VerifyEdits(EditKind.Reorder, EditKind.Update); 19004edits.VerifyEdits(EditKind.Reorder); 19037edits.VerifyEdits(EditKind.Reorder); 20405edits.VerifyEdits(EditKind.Reorder); 20435edits.VerifyEdits(EditKind.Reorder); 20469edits.VerifyEdits(EditKind.Reorder); 20486edits.VerifyEdits(EditKind.Reorder); 20519edits.VerifyEdits(EditKind.Reorder); 23810edits.VerifyEdits(EditKind.Reorder); 23842edits.VerifyEdits(EditKind.Reorder); 23878edits.VerifyEdits(EditKind.Reorder); 23911edits.VerifyEdits(EditKind.Reorder);
Microsoft.CodeAnalysis.Features (94)
EditAndContinue\AbstractEditAndContinueAnalyzer.ActiveMembersBuilder.cs (1)
95var methods = analyzer.GetEditedSymbols(EditKind.Update, oldDeclaration, newDeclaration, oldModel, newModel, cancellationToken);
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (93)
185ref TemporaryArray<(ISymbol?, ISymbol?, EditKind)> result, 186EditKind editKind, 194IReadOnlyDictionary<SyntaxNode, EditKind> editMap, 202EditKind editKind, 209private OneOrMany<(ISymbol? oldSymbol, ISymbol? newSymbol, EditKind editKind)> GetSymbolEdits( 210EditKind editKind, 216IReadOnlyDictionary<SyntaxNode, EditKind> editMap, 220var result = new TemporaryArray<(ISymbol?, ISymbol?, EditKind)>(); 236if (editKind == EditKind.Update && GetSemanticallyMatchingNewSymbol(oldSymbol, newSymbol, newModel.Compilation, symbolCache, cancellationToken) != null) 238AddSymbolEdits(ref result, EditKind.Delete, oldNode, oldSymbol, newNode: null, newSymbol: null, oldModel, newModel, topMatch, editMap, symbolCache, cancellationToken); 239AddSymbolEdits(ref result, EditKind.Insert, oldNode: null, oldSymbol: null, newNode, newSymbol, oldModel, newModel, topMatch, editMap, symbolCache, cancellationToken); 2490 => OneOrMany<(ISymbol?, ISymbol?, EditKind)>.Empty, 258protected abstract TextSpan? TryGetDiagnosticSpan(SyntaxNode node, EditKind editKind); 260internal TextSpan GetDiagnosticSpan(SyntaxNode node, EditKind editKind) 263protected virtual TextSpan GetBodyDiagnosticSpan(SyntaxNode node, EditKind editKind) 305internal string GetDisplayName(SyntaxNode node, EditKind editKind = EditKind.Update) 356protected virtual string GetBodyDisplayName(SyntaxNode node, EditKind editKind = EditKind.Update) 386protected abstract string? TryGetDisplayName(SyntaxNode node, EditKind editKind); 388protected virtual string GetSuspensionPointDisplayName(SyntaxNode node, EditKind editKind) 397internal abstract void ReportTopLevelSyntacticRudeEdits(RudeEditDiagnosticsBuilder diagnostics, Match<SyntaxNode> match, Edit<SyntaxNode> edit, Dictionary<SyntaxNode, EditKind> editMap); 787private void ReportTopLevelSyntacticRudeEdits(RudeEditDiagnosticsBuilder diagnostics, EditScript<SyntaxNode> syntacticEdits, Dictionary<SyntaxNode, EditKind> editMap) 795internal Dictionary<SyntaxNode, EditKind> BuildEditMap(EditScript<SyntaxNode> editScript) 797var map = new Dictionary<SyntaxNode, EditKind>(editScript.Edits.Length); 803if (edit.Kind is EditKind.Delete or EditKind.Update) 808if (edit.Kind is EditKind.Insert or EditKind.Update) 821map.Add(editScript.Match.OldRoot, EditKind.Update); 822map.Add(editScript.Match.NewRoot, EditKind.Update); 1881return GetDiagnosticSpan(newAncestor, EditKind.Delete); 1888return GetDiagnosticSpan(newAncestor, EditKind.Delete); 1912protected static bool HasParentEdit(IReadOnlyDictionary<SyntaxNode, EditKind> editMap, Edit<SyntaxNode> edit) 1917case EditKind.Insert: 1921case EditKind.Delete: 1932protected static bool HasEdit(IReadOnlyDictionary<SyntaxNode, EditKind> editMap, SyntaxNode? node, EditKind editKind) 1936editMap.TryGetValue(node, out var parentEdit) && 1966GetDiagnosticSpan(newNode, EditKind.Update), 1968[GetDisplayName(newNode, EditKind.Update), oldType.ToDisplayString(), newType.ToDisplayString()])); 1975GetDiagnosticSpan(newNode, EditKind.Update), 1977[GetDisplayName(newNode, EditKind.Update)])); 1984GetDiagnosticSpan(newNode, EditKind.Insert), 1986[GetDisplayName(newNode, EditKind.Insert)])); 1995[GetDisplayName(oldNode, EditKind.Delete)])); 2217IReadOnlyDictionary<SyntaxNode, EditKind> editMap, 2242Debug.Assert(editMap[newNode] is EditKind.Update or EditKind.Insert); 2695IReadOnlyDictionary<SyntaxNode, EditKind> editMap, 2747if (syntacticEditKind == EditKind.Move) 2771GetDiagnosticSpan(newTypeDeclaration, EditKind.Update), 2801if (syntacticEditKind == EditKind.Update) 2805syntacticEditKind = EditKind.Insert; 2809syntacticEditKind = EditKind.Delete; 2823if (containingType != null && (syntacticEditKind != EditKind.Delete || newSymbol == null)) 2853if (syntacticEditKind != EditKind.Delete && oldSymbol is INamedTypeSymbol oldType && newSymbol is INamedTypeSymbol newType && IsReloadable(oldType)) 2887case EditKind.Delete: 2933diagnostics.Add(new RudeEditDiagnostic(RudeEditKind.Delete, diagnosticSpan, edit.OldNode, [GetDisplayName(edit.OldNode!, EditKind.Delete)])); 2961[GetDisplayKindAndName(oldSymbol, GetDisplayName(oldDeclaration, EditKind.Delete), fullyQualify: diagnosticSpan.IsEmpty)])); 2988[GetDisplayKindAndName(oldSymbol, GetDisplayName(oldDeclaration, EditKind.Delete), fullyQualify: diagnosticSpan.IsEmpty)])); 3046case EditKind.Insert: 3092HasEdit(editMap, GetSymbolDeclarationSyntax(newAssociatedMember, cancellationToken), EditKind.Insert); 3109GetDiagnosticSpan(newDeclaration, EditKind.Insert), 3132GetDiagnosticSpan(newDeclaration, EditKind.Insert), 3134arguments: [GetDisplayName(newDeclaration, EditKind.Insert)])); 3174GetDiagnosticSpan(newDeclaration, EditKind.Insert), 3176arguments: [GetDisplayName(newDeclaration, EditKind.Insert)])); 3208case EditKind.Update: 3215case EditKind.Reorder: 3490var triviaSymbolEdits = GetSymbolEdits(EditKind.Update, oldEditNode, newEditNode, oldModel, newModel, editScript.Match, editMap, symbolCache, cancellationToken); 3718protected static void AddMemberUpdate(ref TemporaryArray<(ISymbol?, ISymbol?, EditKind)> result, ISymbol? oldSymbol, ISymbol? newSymbol, ISymbol? newSemanticallyMatchingSymbol) 3725result.Add((oldSymbol, null, EditKind.Delete)); 3726result.Add((null, newSymbol, EditKind.Insert)); 3730result.Add((oldSymbol, newSymbol, EditKind.Update)); 4029private ImmutableArray<(ISymbol? oldSymbol, ISymbol? newSymbol, EditKind editKind)> GetNamespaceSymbolEdits( 4034using var _1 = ArrayBuilder<(ISymbol? oldSymbol, ISymbol? newSymbol, EditKind editKind)>.GetInstance(out var builder); 4065builder.Add((oldSymbol: oldType, newSymbol: null, EditKind.Delete)); 4096builder[deletedTypeIndex] = (builder[deletedTypeIndex].oldSymbol, newType, EditKind.Move); 4100builder.Add((oldSymbol: null, newSymbol: newType, EditKind.Insert)); 4731/// and therefore not produced by <see cref="GetSymbolEdits(EditKind, SyntaxNode?, SyntaxNode?, DocumentSemanticModel, DocumentSemanticModel, Match{SyntaxNode}, IReadOnlyDictionary{SyntaxNode, EditKind}, SymbolInfoCache, CancellationToken)"/> 5224locationNode.Span : analyzer.GetDiagnosticSpan(GetDiagnosticNode(out var distance, cancellationToken), distance > 0 ? EditKind.Delete : EditKind.Update), 5252? analyzer.GetDiagnosticSpan(node, (distance > 0 || kind == RudeEditKind.ChangeImplicitMainReturnType) ? EditKind.Delete : EditKind.Update) 6030diagnostics.Add(new RudeEditDiagnostic(RudeEditKind.InsertNotSupportedByRuntime, GetDiagnosticSpan(newLambda, EditKind.Insert), newLambda, [GetDisplayName(newLambda, EditKind.Insert)])); 6038diagnostics.Add(new RudeEditDiagnostic(RudeEditKind.InsertLocalFunctionIntoInterfaceMethod, GetDiagnosticSpan(newLambda, EditKind.Insert), newLambda, [GetDisplayName(newLambda, EditKind.Insert)])); 6383return IsGlobalMain(symbol) ? GetDiagnosticSpan(GetSymbolDeclarationSyntax(symbol, cancellationToken), EditKind.Update) : 6384symbol is IParameterSymbol && IsGlobalMain(symbol.ContainingSymbol) ? GetDiagnosticSpan(GetSymbolDeclarationSyntax(symbol.ContainingSymbol, cancellationToken), EditKind.Update) : 7130internal void ReportTopLevelSyntacticRudeEdits(RudeEditDiagnosticsBuilder diagnostics, EditScript<SyntaxNode> syntacticEdits, Dictionary<SyntaxNode, EditKind> editMap)
Microsoft.CodeAnalysis.Features.Test.Utilities (1)
EditAndContinue\EditScriptDescription.cs (1)
67public void VerifyEdits(params EditKind[] expected)
Microsoft.CodeAnalysis.VisualBasic.Features (48)
EditAndContinue\VisualBasicEditAndContinueAnalyzer.vb (48)
682editKind As EditKind, 722ByRef result As TemporaryArray(Of (ISymbol, ISymbol, EditKind)), 723editKind As EditKind, 731editMap As IReadOnlyDictionary(Of SyntaxNode, EditKind), 777result.Add((oldSymbol, newSymbol, If(isTypeConstraint, EditKind.Update, editKind))) 783Case EditKind.Reorder 790result.Add((oldSymbol, newSymbol, EditKind.Reorder)) 792Case EditKind.Delete 795Case EditKind.Insert 798Case EditKind.Update 806result.Add((oldPropertySymbol, newPropertySymbol, EditKind.Update)) 826result.Add((oldEventSymbol, newEventSymbol, EditKind.Update)) 852Case EditKind.Move 870editKind As EditKind, 894If editKind = EditKind.Update OrElse editKind = EditKind.Reorder Then 1057Protected Overrides Function TryGetDiagnosticSpan(node As SyntaxNode, editKind As EditKind) As TextSpan? 1061Protected Overloads Shared Function GetDiagnosticSpan(node As SyntaxNode, editKind As EditKind) As TextSpan 1065Private Shared Function TryGetDiagnosticSpanImpl(node As SyntaxNode, editKind As EditKind) As TextSpan? 1069Protected Overrides Function GetBodyDiagnosticSpan(node As SyntaxNode, editKind As EditKind) As TextSpan 1074Friend Shared Function TryGetDiagnosticSpanImpl(kind As SyntaxKind, node As SyntaxNode, editKind As EditKind) As TextSpan? 1173If editKind = EditKind.Delete Then 1446Protected Overrides Function TryGetDisplayName(node As SyntaxNode, editKind As EditKind) As String 1450Protected Overloads Shared Function GetDisplayName(node As SyntaxNode, editKind As EditKind) As String 1460Protected Overrides Function GetBodyDisplayName(node As SyntaxNode, Optional editKind As EditKind = EditKind.Update) As String 1464Private Shared Function TryGetDisplayNameImpl(node As SyntaxNode, editKind As EditKind) As String 1601Return If(editKind = EditKind.Update, VBFeaturesResources.Using_statement, VBFeaturesResources.Using_block) 1604Return If(editKind = EditKind.Update, VBFeaturesResources.With_statement, VBFeaturesResources.With_block) 1607Return If(editKind = EditKind.Update, VBFeaturesResources.SyncLock_statement, VBFeaturesResources.SyncLock_block) 1610Return If(editKind = EditKind.Update, VBFeaturesResources.For_Each_statement, VBFeaturesResources.For_Each_block) 1696Private ReadOnly _kind As EditKind 1703kind As EditKind, 1721arguments:={GetDisplayName(If(_newNode, _oldNode), EditKind.Update)})) 1738Case EditKind.Delete 1742Case EditKind.Update 1746Case EditKind.Move 1750Case EditKind.Insert 1754Case EditKind.Reorder 1895editMap As Dictionary(Of SyntaxNode, EditKind)) 1902If edit.Kind = EditKind.Delete AndAlso 1906If HasEdit(editMap, edit.OldNode.Parent.Parent, EditKind.Delete) Then 1910ElseIf edit.Kind = EditKind.Insert AndAlso 1914If HasEdit(editMap, edit.NewNode.Parent.Parent, EditKind.Insert) Then 1975GetDiagnosticSpan(newNode, EditKind.Insert), 1977arguments:={GetDisplayName(newNode, EditKind.Insert)})) 2085Debug.Assert(edit.Kind <> EditKind.Update OrElse edit.OldNode.RawKind = edit.NewNode.RawKind) 2087If edit.Kind <> EditKind.Update OrElse Not AreExceptionHandlingPartsEquivalent(edit.OldNode, edit.NewNode) Then
Microsoft.CodeAnalysis.VisualBasic.Features.UnitTests (18)
EditAndContinue\TopLevelEditingTests.vb (16)
5115edits.VerifyEdits(EditKind.Reorder) 5137edits.VerifyEdits(EditKind.Reorder) 5166edits.VerifyEdits(EditKind.Reorder) 7695edits.VerifyEdits(EditKind.Reorder) 7742edits.VerifyEdits(EditKind.Reorder) 7766edits.VerifyEdits(EditKind.Reorder) 7790edits.VerifyEdits(EditKind.Reorder) 7812edits.VerifyEdits(EditKind.Reorder) 7837edits.VerifyEdits(EditKind.Reorder) 7862edits.VerifyEdits(EditKind.Reorder) 8591edits.VerifyEdits(EditKind.Reorder) 8613edits.VerifyEdits(EditKind.Reorder) 8635edits.VerifyEdits(EditKind.Reorder) 8671edits.VerifyEdits(EditKind.Reorder) 8694edits.VerifyEdits(EditKind.Reorder) 8720edits.VerifyEdits(EditKind.Reorder)
EditAndContinue\VisualBasicEditAndContinueAnalyzerTests.vb (2)
41Dim actualSpan = VisualBasicEditAndContinueAnalyzer.TryGetDiagnosticSpanImpl(node.Kind, node, EditKind.Update).Value 101span = VisualBasicEditAndContinueAnalyzer.TryGetDiagnosticSpanImpl(k, Nothing, EditKind.Update)
Microsoft.CodeAnalysis.Workspaces (24)
Differencing\Edit.cs (9)
22internal Edit(EditKind kind, TreeComparer<TNode> comparer, TNode oldNode, TNode newNode) 24Debug.Assert((oldNode == null || oldNode.Equals(null)) == (kind == EditKind.Insert)); 25Debug.Assert((newNode == null || newNode.Equals(null)) == (kind == EditKind.Delete)); 38public EditKind Kind { get; } 96case EditKind.Delete: 99case EditKind.Insert: 102case EditKind.Update: 105case EditKind.Move: 106case EditKind.Reorder:
Differencing\EditScript.cs (5)
95edits.Add(new Edit<TNode>(EditKind.Insert, Comparer, oldNode: default, newNode: x)); 114edits.Add(new Edit<TNode>(EditKind.Update, Comparer, oldNode: w, newNode: x)); 126edits.Add(new Edit<TNode>(EditKind.Move, Comparer, oldNode: w, newNode: x)); 156edits.Add(new Edit<TNode>(EditKind.Delete, Comparer, oldNode: w, newNode: default)); 236edits.Add(new Edit<TNode>(EditKind.Reorder, Comparer, oldNode: a, newNode: b));
Differencing\SequenceEdit.cs (10)
30/// The kind of edit: <see cref="EditKind.Delete"/>, <see cref="EditKind.Insert"/>, or <see cref="EditKind.Update"/>. 32public EditKind Kind 38return EditKind.Insert; 43return EditKind.Delete; 46return EditKind.Update; 77case EditKind.Delete: 80case EditKind.Insert: 83case EditKind.Update:
Microsoft.CodeAnalysis.Workspaces.UnitTests (6)
Differencing\LongestCommonSubsequenceTests.cs (6)
50Assert.True(edit.Kind is EditKind.Delete or EditKind.Insert or EditKind.Update); 53case EditKind.Delete: 58case EditKind.Insert: 63case EditKind.Update: