160 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.Features (94)
EditAndContinue\AbstractEditAndContinueAnalyzer.ActiveMembersBuilder.cs (1)
95var methods = analyzer.GetEditedSymbols(EditKind.Update, oldDeclaration, newDeclaration, oldModel, newModel, cancellationToken);
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (93)
190ref TemporaryArray<(ISymbol?, ISymbol?, EditKind)> result, 191EditKind editKind, 199IReadOnlyDictionary<SyntaxNode, EditKind> editMap, 207EditKind editKind, 214private OneOrMany<(ISymbol? oldSymbol, ISymbol? newSymbol, EditKind editKind)> GetSymbolEdits( 215EditKind editKind, 221IReadOnlyDictionary<SyntaxNode, EditKind> editMap, 225var result = new TemporaryArray<(ISymbol?, ISymbol?, EditKind)>(); 241if (editKind == EditKind.Update && GetSemanticallyMatchingNewSymbol(oldSymbol, newSymbol, newModel.Compilation, symbolCache, cancellationToken) != null) 243AddSymbolEdits(ref result, EditKind.Delete, oldNode, oldSymbol, newNode: null, newSymbol: null, oldModel, newModel, topMatch, editMap, symbolCache, cancellationToken); 244AddSymbolEdits(ref result, EditKind.Insert, oldNode: null, oldSymbol: null, newNode, newSymbol, oldModel, newModel, topMatch, editMap, symbolCache, cancellationToken); 2540 => OneOrMany<(ISymbol?, ISymbol?, EditKind)>.Empty, 263protected abstract TextSpan? TryGetDiagnosticSpan(SyntaxNode node, EditKind editKind); 265internal TextSpan GetDiagnosticSpan(SyntaxNode node, EditKind editKind) 268protected virtual TextSpan GetBodyDiagnosticSpan(SyntaxNode node, EditKind editKind) 310internal string GetDisplayName(SyntaxNode node, EditKind editKind = EditKind.Update) 361protected virtual string GetBodyDisplayName(SyntaxNode node, EditKind editKind = EditKind.Update) 391protected abstract string? TryGetDisplayName(SyntaxNode node, EditKind editKind); 393protected virtual string GetSuspensionPointDisplayName(SyntaxNode node, EditKind editKind) 402internal abstract void ReportTopLevelSyntacticRudeEdits(RudeEditDiagnosticsBuilder diagnostics, Match<SyntaxNode> match, Edit<SyntaxNode> edit, Dictionary<SyntaxNode, EditKind> editMap); 792private void ReportTopLevelSyntacticRudeEdits(RudeEditDiagnosticsBuilder diagnostics, EditScript<SyntaxNode> syntacticEdits, Dictionary<SyntaxNode, EditKind> editMap) 800internal Dictionary<SyntaxNode, EditKind> BuildEditMap(EditScript<SyntaxNode> editScript) 802var map = new Dictionary<SyntaxNode, EditKind>(editScript.Edits.Length); 808if (edit.Kind is EditKind.Delete or EditKind.Update) 813if (edit.Kind is EditKind.Insert or EditKind.Update) 826map.Add(editScript.Match.OldRoot, EditKind.Update); 827map.Add(editScript.Match.NewRoot, EditKind.Update); 1886return GetDiagnosticSpan(newAncestor, EditKind.Delete); 1893return GetDiagnosticSpan(newAncestor, EditKind.Delete); 1917protected static bool HasParentEdit(IReadOnlyDictionary<SyntaxNode, EditKind> editMap, Edit<SyntaxNode> edit) 1922case EditKind.Insert: 1926case EditKind.Delete: 1937protected static bool HasEdit(IReadOnlyDictionary<SyntaxNode, EditKind> editMap, SyntaxNode? node, EditKind editKind) 1941editMap.TryGetValue(node, out var parentEdit) && 1971GetDiagnosticSpan(newNode, EditKind.Update), 1973[GetDisplayName(newNode, EditKind.Update), oldType.ToDisplayString(), newType.ToDisplayString()])); 1980GetDiagnosticSpan(newNode, EditKind.Update), 1982[GetDisplayName(newNode, EditKind.Update)])); 1989GetDiagnosticSpan(newNode, EditKind.Insert), 1991[GetDisplayName(newNode, EditKind.Insert)])); 2000[GetDisplayName(oldNode, EditKind.Delete)])); 2222IReadOnlyDictionary<SyntaxNode, EditKind> editMap, 2247Debug.Assert(editMap[newNode] is EditKind.Update or EditKind.Insert); 2700IReadOnlyDictionary<SyntaxNode, EditKind> editMap, 2752if (syntacticEditKind == EditKind.Move) 2776GetDiagnosticSpan(newTypeDeclaration, EditKind.Update), 2806if (syntacticEditKind == EditKind.Update) 2810syntacticEditKind = EditKind.Insert; 2814syntacticEditKind = EditKind.Delete; 2840if (containingType != null && (syntacticEditKind != EditKind.Delete || newSymbol == null)) 2869if (syntacticEditKind != EditKind.Delete && oldSymbol is INamedTypeSymbol oldType && newSymbol is INamedTypeSymbol newType && IsReloadable(oldType)) 2903case EditKind.Delete: 2949diagnostics.Add(new RudeEditDiagnostic(RudeEditKind.Delete, diagnosticSpan, edit.OldNode, [GetDisplayName(edit.OldNode!, EditKind.Delete)])); 2977[GetDisplayKindAndName(oldSymbol, GetDisplayName(oldDeclaration, EditKind.Delete), fullyQualify: diagnosticSpan.IsEmpty)])); 3004[GetDisplayKindAndName(oldSymbol, GetDisplayName(oldDeclaration, EditKind.Delete), fullyQualify: diagnosticSpan.IsEmpty)])); 3062case EditKind.Insert: 3108HasEdit(editMap, GetSymbolDeclarationSyntax(newAssociatedMember, cancellationToken), EditKind.Insert); 3125GetDiagnosticSpan(newDeclaration, EditKind.Insert), 3148GetDiagnosticSpan(newDeclaration, EditKind.Insert), 3150arguments: [GetDisplayName(newDeclaration, EditKind.Insert)])); 3190GetDiagnosticSpan(newDeclaration, EditKind.Insert), 3192arguments: [GetDisplayName(newDeclaration, EditKind.Insert)])); 3224case EditKind.Update: 3231case EditKind.Reorder: 3506var triviaSymbolEdits = GetSymbolEdits(EditKind.Update, oldEditNode, newEditNode, oldModel, newModel, editScript.Match, editMap, symbolCache, cancellationToken); 3731protected static void AddMemberUpdate(ref TemporaryArray<(ISymbol?, ISymbol?, EditKind)> result, ISymbol? oldSymbol, ISymbol? newSymbol, ISymbol? newSemanticallyMatchingSymbol) 3738result.Add((oldSymbol, null, EditKind.Delete)); 3739result.Add((null, newSymbol, EditKind.Insert)); 3743result.Add((oldSymbol, newSymbol, EditKind.Update)); 4042private ImmutableArray<(ISymbol? oldSymbol, ISymbol? newSymbol, EditKind editKind)> GetNamespaceSymbolEdits( 4047using var _1 = ArrayBuilder<(ISymbol? oldSymbol, ISymbol? newSymbol, EditKind editKind)>.GetInstance(out var builder); 4078builder.Add((oldSymbol: oldType, newSymbol: null, EditKind.Delete)); 4109builder[deletedTypeIndex] = (builder[deletedTypeIndex].oldSymbol, newType, EditKind.Move); 4113builder.Add((oldSymbol: null, newSymbol: newType, EditKind.Insert)); 4787/// and therefore not produced by <see cref="GetSymbolEdits(EditKind, SyntaxNode?, SyntaxNode?, DocumentSemanticModel, DocumentSemanticModel, Match{SyntaxNode}, IReadOnlyDictionary{SyntaxNode, EditKind}, SymbolInfoCache, CancellationToken)"/> 5280locationNode.Span : analyzer.GetDiagnosticSpan(GetDiagnosticNode(out var distance, cancellationToken), distance > 0 ? EditKind.Delete : EditKind.Update), 5308? analyzer.GetDiagnosticSpan(node, (distance > 0 || kind == RudeEditKind.ChangeImplicitMainReturnType) ? EditKind.Delete : EditKind.Update) 6086diagnostics.Add(new RudeEditDiagnostic(RudeEditKind.InsertNotSupportedByRuntime, GetDiagnosticSpan(newLambda, EditKind.Insert), newLambda, [GetDisplayName(newLambda, EditKind.Insert)])); 6094diagnostics.Add(new RudeEditDiagnostic(RudeEditKind.InsertLocalFunctionIntoInterfaceMethod, GetDiagnosticSpan(newLambda, EditKind.Insert), newLambda, [GetDisplayName(newLambda, EditKind.Insert)])); 6439return IsGlobalMain(symbol) ? GetDiagnosticSpan(GetSymbolDeclarationSyntax(symbol, cancellationToken), EditKind.Update) : 6440symbol is IParameterSymbol && IsGlobalMain(symbol.ContainingSymbol) ? GetDiagnosticSpan(GetSymbolDeclarationSyntax(symbol.ContainingSymbol, cancellationToken), EditKind.Update) : 7186internal void ReportTopLevelSyntacticRudeEdits(RudeEditDiagnosticsBuilder diagnostics, EditScript<SyntaxNode> syntacticEdits, Dictionary<SyntaxNode, EditKind> editMap)
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: