571 instantiations of TextChange
GenerateDocumentationAndConfigFiles (4)
IdeCoreBenchmarks (5)
Metrics (4)
Metrics.Legacy (4)
Microsoft.AspNetCore.App.Analyzers (4)
Microsoft.CodeAnalysis (4)
Microsoft.CodeAnalysis.Analyzers (6)
Microsoft.CodeAnalysis.AnalyzerUtilities (4)
Microsoft.CodeAnalysis.BannedApiAnalyzers (4)
Microsoft.CodeAnalysis.CodeStyle (6)
Microsoft.CodeAnalysis.CodeStyle.Fixes (8)
src\Analyzers\Core\CodeFixes\ConflictMarkerResolution\AbstractConflictMarkerCodeFixProvider.cs (8)
334edits.Add(new TextChange(TextSpan.FromBounds(startPos, startEnd), ""));
338edits.Add(new TextChange(TextSpan.FromBounds(firstMiddlePos, bottomEnd), ""));
347edits.Add(new TextChange(TextSpan.FromBounds(startPos, equalsEnd), ""));
351edits.Add(new TextChange(TextSpan.FromBounds(endPos, bottomEnd), ""));
360edits.Add(new TextChange(TextSpan.FromBounds(startPos, startEnd), ""));
366edits.Add(new TextChange(TextSpan.FromBounds(secondMiddlePos, equalsEnd), ""));
372edits.Add(new TextChange(TextSpan.FromBounds(firstMiddlePos, equalsEnd), ""));
377edits.Add(new TextChange(TextSpan.FromBounds(endPos, bottomEnd), ""));
Microsoft.CodeAnalysis.CSharp.CodeStyle (2)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (6)
Microsoft.CodeAnalysis.CSharp.EditorFeatures (17)
StringCopyPaste\KnownSourcePasteProcessor.cs (7)
188edits.Add(new TextChange(new TextSpan(StringExpressionBeforePaste.Span.Start, 0), dollarSignsToAdd));
192edits.Add(new TextChange(new TextSpan(StringExpressionBeforePasteInfo.ContentSpans.First().Start, 0), quotesToAdd));
197edits.Add(new TextChange(new TextSpan(StringExpressionBeforePasteInfo.StartDelimiterSpan.End, 0), NewLine + IndentationWhitespace));
213edits.Add(new TextChange(new TextSpan(StringExpressionBeforePasteInfo.EndDelimiterSpan.Start, 0), NewLine + IndentationWhitespace));
217edits.Add(new TextChange(new TextSpan(StringExpressionBeforePasteInfo.EndDelimiterSpanWithoutSuffix.End, 0), quotesToAdd));
237edits.Add(new TextChange(new TextSpan(interpolation.OpenBraceToken.Span.End, 0), new string('{', dollarSignsToAdd)));
238edits.Add(new TextChange(new TextSpan(interpolation.CloseBraceToken.Span.Start, 0), new string('}', dollarSignsToAdd)));
StringCopyPaste\UnknownSourcePasteProcessor.cs (5)
125edits.Add(new TextChange(new TextSpan(StringExpressionBeforePaste.Span.Start, 0), dollarSignsToAdd));
129edits.Add(new TextChange(new TextSpan(StringExpressionBeforePasteInfo.ContentSpans.First().Start, 0), quotesToAdd));
140edits.Add(new TextChange(new TextSpan(StringExpressionBeforePasteInfo.EndDelimiterSpanWithoutSuffix.End, 0), quotesToAdd));
169edits.Add(new TextChange(new TextSpan(StringExpressionBeforePasteInfo.StartDelimiterSpan.End, 0), NewLine + IndentationWhitespace));
213edits.Add(new TextChange(new TextSpan(StringExpressionBeforePasteInfo.EndDelimiterSpan.Start, 0), NewLine + IndentationWhitespace));
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (1)
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (1)
Microsoft.CodeAnalysis.CSharp.Features (27)
InlineHints\CSharpInlineTypeHintsService.cs (3)
81? new TypeHint(parameter.Type, span, textChange: new TextChange(span, GetTypeDisplayString(parameter.Type) + " "), trailingSpace: true)
95return new(type, span, new TextChange(span, " " + GetTypeDisplayString(type)), leadingSpace: true);
134return new TypeHint(type, span, new TextChange(displayAllSpan.Span, GetTypeDisplayString(type)), trailingSpace: trailingSpace);
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (1)
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (2)
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (50)
IncrementalParsing\IncrementalParsingTests.cs (48)
496var change = new TextChange(span, ".");
528var change = new TextChange(span, " ");
574text = text.WithChanges(new TextChange(prefixSpan, ""), new TextChange(suffixSpan, ""));
626var withOpenBraceDeletedText = initialText.WithChanges(new TextChange(openBraceLine.SpanIncludingLineBreak, ""));
837var withCloseBraceDeletedText = withOpenBraceDeletedText.WithChanges(new TextChange(closeBraceLine.SpanIncludingLineBreak, ""));
1395var newText = text.WithChanges(new TextChange(new TextSpan(0, 8), ""));
1409var newText = text.WithChanges(new TextChange(new TextSpan(0, 8), ""));
3178new TextChange(new TextSpan(str.IndexOf(" abc", StringComparison.Ordinal), 0), "//"),
3179new TextChange(new TextSpan(str.IndexOf(" 123", StringComparison.Ordinal), 0), "//"),
3180new TextChange(new TextSpan(str.IndexOf(" def", StringComparison.Ordinal), 0), "//"));
3200var newText = oldText.WithChanges(new TextChange(new TextSpan(0, 0), "{"));
3216var newText = oldText.WithChanges(new TextChange(new TextSpan(0, 0), @"System.Console.WriteLine(false)
3275var newText = oldText.WithChanges(new TextChange(new TextSpan(0, 0), @"if (false)
3331var change = new TextChange(span, text1);
3345change = new TextChange(span, text2);
3414var change = new TextChange(span, "// ");
3451var change = new TextChange(span, "// ");
3530var change = new TextChange(new TextSpan(0, 0), items[1]); // Prepend
3629var change = new TextChange(span, "p");
3650var change = new TextChange(span, "");
3671var change = new TextChange(span, "[");
3692var change = new TextChange(span, "[Obsolete]");
3713var change = new TextChange(span, "public");
3735var change = new TextChange(span, "c");
3759var change = new TextChange(span, "1, Attr2");
3783var change = new TextChange(span, ", Attr2");
3807var change = new TextChange(span, " [Attr2]");
3831var change = new TextChange(span, "Arg");
3855var change = new TextChange(span, "2");
3881var change = new TextChange(span, "1, Attr2");
3906var change = new TextChange(span, "[Attr]");
3932var change = new TextChange(span, " [Attr2]");
3958var change = new TextChange(span, "");
3976var change = new TextChange(span, ".z");
3994var change = new TextChange(span, " if (c) { }");
4012var change = new TextChange(span, " else (c) { }");
4026var change = new TextChange(span, "");
4040var change = new TextChange(span, "{ ");
4055var change = new TextChange(span, "");
4092var change = new TextChange(span, "[");
4118new TextChange(new TextSpan(position1, 0), "n"),
4119new TextChange(new TextSpan(position2, 0), "n"),
4120new TextChange(new TextSpan(position3, 0), "n"));
4158new TextChange(new TextSpan(locationOfChange, 0), "/*"),
4159new TextChange(new TextSpan(locationOfChange + widthOfChange, 0), "*/")
4168var newText = oldText.WithChanges(new TextChange(new TextSpan(locationOfChange, widthOfChange), ""));
4194var newText = oldText.WithChanges(new TextChange(new TextSpan(oldText.Length, 0), newChar.ToString()));
Microsoft.CodeAnalysis.CSharp.Test.Utilities (1)
Microsoft.CodeAnalysis.CSharp.Workspaces (2)
Microsoft.CodeAnalysis.EditorFeatures (13)
EditorConfigSettings\Updater\SettingsUpdateHelper.cs (5)
171var textChange = new TextChange();
185textChange = new TextChange(curLine.Span, $"{untrimmedKey}= {optionValue}{comment}");
306return (editorConfigText.WithChanges(new TextChange(new TextSpan(lastValidSpecificHeaderSpanEnd.Value.Span.End, 0), newEntry)), lastValidHeaderSpanEnd, lastValidSpecificHeaderSpanEnd);
315return (editorConfigText.WithChanges(new TextChange(new TextSpan(lastValidHeaderSpanEnd.Value.Span.End, 0), newEntry)), lastValidHeaderSpanEnd, lastValidSpecificHeaderSpanEnd);
349var result = editorConfigText.WithChanges(new TextChange(new TextSpan(editorConfigText.Length, 0), prefix + newEntry));
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (2)
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (85)
CommentSelection\CommentUncommentSelectionCommandHandlerTests.cs (81)
87CommentSelection(code, new[] { new TextChange(TextSpan.FromBounds(0, 0), "//") }, supportBlockComments: true);
103new TextChange(new TextSpan(8, 0), "/*"),
104new TextChange(new TextSpan(14, 0), "*/"),
117new TextChange(new TextSpan(0, 0), "//"),
118new TextChange(new TextSpan(16, 0), "//"),
127CommentSelection(code, new[] { new TextChange(TextSpan.FromBounds(0, 0), "//") }, supportBlockComments: false);
145new TextChange(new TextSpan(20, 0), "//"),
146new TextChange(new TextSpan(34, 0), "//"),
147new TextChange(new TextSpan(41, 0), "//"),
171new TextChange(new TextSpan(0, 0), "//"),
172new TextChange(new TextSpan(9, 0), "//"),
173new TextChange(new TextSpan(12, 0), "//"),
174new TextChange(new TextSpan(30, 0), "//"),
185new TextChange(new TextSpan(0, 0), "//"),
186new TextChange(new TextSpan(11, 0), "//"),
187new TextChange(new TextSpan(16, 0), "//"),
188new TextChange(new TextSpan(36, 0), "//"),
211new TextChange(new TextSpan(20, 0), "//"),
212new TextChange(new TextSpan(34, 0), "//"),
213new TextChange(new TextSpan(41, 0), "//"),
232new TextChange(new TextSpan(20, 0), "//"),
233new TextChange(new TextSpan(34, 0), "//"),
234new TextChange(new TextSpan(41, 0), "//"),
254new TextChange(new TextSpan(20, 0), "//"),
255new TextChange(new TextSpan(34, 0), "//"),
256new TextChange(new TextSpan(41, 0), "//"),
277new TextChange(new TextSpan(20, 0), "/*"),
278new TextChange(new TextSpan(21, 0), "*/"),
279new TextChange(new TextSpan(34, 0), "//"),
280new TextChange(new TextSpan(41, 0), "/*"),
281new TextChange(new TextSpan(42, 0), "*/"),
282new TextChange(new TextSpan(52, 0), "//"),
302new TextChange(new TextSpan(20, 0), "//"),
303new TextChange(new TextSpan(34, 0), "//"),
304new TextChange(new TextSpan(41, 0), "//"),
313UncommentSelection(code, new[] { new TextChange(new TextSpan(0, 2), string.Empty) }, Span.FromBounds(0, 6), supportBlockComments: true);
322new TextChange(new TextSpan(7, 2), string.Empty),
323new TextChange(new TextSpan(30, 2), string.Empty),
335new TextChange(new TextSpan(11, 2), string.Empty),
336new TextChange(new TextSpan(34, 2), string.Empty),
359new TextChange(new TextSpan(18, 2), string.Empty),
360new TextChange(new TextSpan(34, 2), string.Empty),
361new TextChange(new TextSpan(47, 2), string.Empty),
362new TextChange(new TextSpan(68, 2), string.Empty),
363new TextChange(new TextSpan(119, 2), string.Empty),
364new TextChange(new TextSpan(128, 2), string.Empty),
385new TextChange(new TextSpan(20, 2), string.Empty),
386new TextChange(new TextSpan(23, 2), string.Empty),
387new TextChange(new TextSpan(38, 2), string.Empty),
388new TextChange(new TextSpan(49, 2), string.Empty),
389new TextChange(new TextSpan(52, 2), string.Empty),
390new TextChange(new TextSpan(64, 2), string.Empty),
411new TextChange(new TextSpan(2, 2), string.Empty),
412new TextChange(new TextSpan(19, 2), string.Empty),
413new TextChange(new TextSpan(26, 2), string.Empty),
423CommentSelection(code, new[] { new TextChange(TextSpan.FromBounds(0, 0), "//") }, new[] { new Span(0, 15) }, supportBlockComments: true);
433new TextChange(new TextSpan(6, 2), string.Empty),
434new TextChange(new TextSpan(16, 2), string.Empty)
447new TextChange(new TextSpan(19, 2), string.Empty),
448new TextChange(new TextSpan(29, 2), string.Empty)
461new TextChange(new TextSpan(0, 2), string.Empty),
462new TextChange(new TextSpan(15, 2), string.Empty)
475new TextChange(new TextSpan(0, 2), string.Empty),
476new TextChange(new TextSpan(15, 2), string.Empty)
513new TextChange(new TextSpan(18, 2), string.Empty),
514new TextChange(new TextSpan(112, 2), string.Empty),
544new TextChange(new TextSpan(20, 2), string.Empty),
545new TextChange(new TextSpan(114, 2), string.Empty),
573new TextChange(new TextSpan(18, 2), string.Empty),
574new TextChange(new TextSpan(112, 2), string.Empty),
602new TextChange(new TextSpan(18, 2), string.Empty),
603new TextChange(new TextSpan(112, 2), string.Empty),
631new TextChange(new TextSpan(55, 2), string.Empty),
659new TextChange(new TextSpan(55, 2), string.Empty),
687new TextChange(new TextSpan(18, 2), string.Empty),
688new TextChange(new TextSpan(28, 2), string.Empty),
689new TextChange(new TextSpan(44, 2), string.Empty),
690new TextChange(new TextSpan(53, 2), string.Empty),
691new TextChange(new TextSpan(78, 2), string.Empty),
692new TextChange(new TextSpan(109, 2), string.Empty),
693new TextChange(new TextSpan(118, 2), string.Empty),
Snippets\RoslynLSPSnippetConvertTests.cs (3)
404[], new TextChange(new TextSpan(8, 0), "quux"), triggerLocation: 12, CancellationToken.None).Result;
415[], new TextChange(new TextSpan(4, 4), "bar quux"), triggerLocation: 12, CancellationToken.None).Result;
492var textChange = new TextChange(new TextSpan(stringSpan.Start, 0), text.Substring(stringSpan.Start, stringSpan.Length));
Microsoft.CodeAnalysis.EditorFeatures2.UnitTests (2)
Microsoft.CodeAnalysis.Features (48)
src\Analyzers\Core\CodeFixes\ConflictMarkerResolution\AbstractConflictMarkerCodeFixProvider.cs (8)
334edits.Add(new TextChange(TextSpan.FromBounds(startPos, startEnd), ""));
338edits.Add(new TextChange(TextSpan.FromBounds(firstMiddlePos, bottomEnd), ""));
347edits.Add(new TextChange(TextSpan.FromBounds(startPos, equalsEnd), ""));
351edits.Add(new TextChange(TextSpan.FromBounds(endPos, bottomEnd), ""));
360edits.Add(new TextChange(TextSpan.FromBounds(startPos, startEnd), ""));
366edits.Add(new TextChange(TextSpan.FromBounds(secondMiddlePos, equalsEnd), ""));
372edits.Add(new TextChange(TextSpan.FromBounds(firstMiddlePos, equalsEnd), ""));
377edits.Add(new TextChange(TextSpan.FromBounds(endPos, bottomEnd), ""));
Microsoft.CodeAnalysis.LanguageServer.Protocol (7)
Microsoft.CodeAnalysis.LanguageServer.Protocol.UnitTests (5)
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (4)
Microsoft.CodeAnalysis.PublicApiAnalyzers (4)
Microsoft.CodeAnalysis.PublicApiAnalyzers.CodeFixes (1)
Microsoft.CodeAnalysis.ResxSourceGenerator (4)
Microsoft.CodeAnalysis.UnitTests (156)
Text\TextChangeTests.cs (155)
111new TextChange(new TextSpan(0, 5), "Halo"),
112new TextChange(new TextSpan(6, 5), "Universe"));
123new TextChange(new TextSpan(0, 5), "Halo"),
124new TextChange(new TextSpan(3, 5), "Universe")
136new TextChange(new TextSpan(6, 5), "Universe"),
137new TextChange(new TextSpan(0, 5), "Halo")
150new TextChange(new TextSpan(6, 7), "Universe"),
151new TextChange(new TextSpan(0, 5), "Halo")
165new TextChange(new TextSpan(6, 0), "Super "),
166new TextChange(new TextSpan(6, 0), "Spectacular "));
177new TextChange(new TextSpan(6, 0), "Super "),
178new TextChange(new TextSpan(6, 2), "Vu"));
189new TextChange(new TextSpan(6, 2), "Vu"),
190new TextChange(new TextSpan(6, 0), "Super ")
203new TextChange(new TextSpan(4, 1), string.Empty),
204new TextChange(new TextSpan(5, 1), string.Empty));
214new TextChange(new TextSpan(4, 1), string.Empty),
215new TextChange(new TextSpan(6, 5), "Universe"));
229new TextChange(new TextSpan(4, 1), string.Empty));
239new TextChange(new TextSpan(6, 5), "Universe"));
256new TextChange(new TextSpan(0, 1), "[1]"),
257new TextChange(new TextSpan(1, 1), "[2]"),
258new TextChange(new TextSpan(5, 0), "[3]"),
259new TextChange(new TextSpan(25, 2), "[4]")
301new TextChange(new TextSpan(8, 2), "IN"),
302new TextChange(new TextSpan(15, 2), "IN"));
309new TextChange(new TextSpan(8, 2), new string('a', 10)),
310new TextChange(new TextSpan(15, 2), new string('a', 10)));
317new TextChange(new TextSpan(8, 2), "\r\n"),
318new TextChange(new TextSpan(15, 2), "\r\n"));
325new TextChange(new TextSpan(6, 0), "aa\r"),
326new TextChange(new TextSpan(11, 0), "aa\r"));
333new TextChange(new TextSpan(6, 0), "aa\n"),
334new TextChange(new TextSpan(11, 0), "aa\n"));
341new TextChange(new TextSpan(4, 4), "aaaaaa"),
342new TextChange(new TextSpan(15, 4), "aaaaaa"));
349new TextChange(new TextSpan(5, 0), "aaaaaa"));
356new TextChange(new TextSpan(5, 0), "\naaaaaa\r"));
363new TextChange(new TextSpan(21, 0), "Line4\r\n"),
364new TextChange(new TextSpan(21, 0), "Line5\r\n"));
659var change1 = original.WithChanges(new TextChange(new TextSpan(5, 6), string.Empty)); // prepare a ChangedText instance
670var change1 = original.WithChanges(new TextChange(new TextSpan(5, 6), string.Empty)); // prepare a ChangedText instance
671var change2 = change1.WithChanges(new TextChange(new TextSpan(2, 0), string.Empty)); // this should not cause exception
680var change1 = original.WithChanges(new TextChange(new TextSpan(6, 0), "Cruel "));
681var change2 = change1.WithChanges(new TextChange(new TextSpan(7, 3), "oo"));
695var change1 = original.WithChanges(new TextChange(new TextSpan(1, 3), "aa"));
696var change2 = change1.WithChanges(new TextChange(new TextSpan(2, 0), "bb"));
701Assert.Equal(new[] { new TextChange(new TextSpan(1, 3), "abba") }, changes);
709var change1 = original.WithChanges(new TextChange(new TextSpan(1, 1), "aaa"));
710var change2 = change1.WithChanges(new TextChange(new TextSpan(3, 0), "bb"));
715Assert.Equal(new[] { new TextChange(new TextSpan(1, 1), "aabba") }, changes);
723var change1 = original.WithChanges(new TextChange(new TextSpan(1, 3), "aa"));
724var change2 = change1.WithChanges(new TextChange(new TextSpan(2, 1), "bb"));
729Assert.Equal(new[] { new TextChange(new TextSpan(1, 3), "abb") }, changes);
736var change1 = original.WithChanges(new TextChange(new TextSpan(6, 0), "Cruel "));
737var change2 = change1.WithChanges(new TextChange(new TextSpan(2, 14), "ar"));
750var change1 = original.WithChanges(new TextChange(new TextSpan(6, 0), "Cruel "));
751var change2 = change1.WithChanges(new TextChange(new TextSpan(4, 6), " Bel"));
764var change1 = original.WithChanges(new TextChange(new TextSpan(6, 0), "Cruel "));
765var change2 = change1.WithChanges(new TextChange(new TextSpan(7, 6), "wazy V"));
778var change1 = original.WithChanges(new TextChange(new TextSpan(1, 0), "aa"));
779var change2 = change1.WithChanges(new TextChange(new TextSpan(1, 0), "bb"));
784Assert.Equal(new[] { new TextChange(new TextSpan(1, 0), "bbaa") }, changes);
791var change1 = original.WithChanges(new TextChange(new TextSpan(1, 3), "aa"));
792var change2 = change1.WithChanges(new TextChange(new TextSpan(1, 0), "bb"));
797Assert.Equal(new[] { new TextChange(new TextSpan(1, 3), "bbaa") }, changes);
804var change1 = original.WithChanges(new TextChange(new TextSpan(1, 0), "aa"));
805var change2 = change1.WithChanges(new TextChange(new TextSpan(1, 1), "bb"));
810Assert.Equal(new[] { new TextChange(new TextSpan(1, 0), "bba") }, changes);
817var change1 = original.WithChanges(new TextChange(new TextSpan(1, 0), "aa"));
818var change2 = change1.WithChanges(new TextChange(new TextSpan(1, 2), "bb"));
823Assert.Equal(new[] { new TextChange(new TextSpan(1, 0), "bb") }, changes);
830var change1 = original.WithChanges(new TextChange(new TextSpan(1, 0), "aa"));
831var change2 = change1.WithChanges(new TextChange(new TextSpan(1, 3), "bb"));
836Assert.Equal(new[] { new TextChange(new TextSpan(1, 1), "bb") }, changes);
844var change1 = original.WithChanges(new TextChange(new TextSpan(1, 3), "aa"));
845var change2 = change1.WithChanges(new TextChange(new TextSpan(1, 1), "bb"));
850Assert.Equal(new[] { new TextChange(new TextSpan(1, 3), "bba") }, changes);
858var change1 = original.WithChanges(new TextChange(new TextSpan(1, 3), "aa"));
859var change2 = change1.WithChanges(new TextChange(new TextSpan(1, 3), "bb"));
870var change1 = original.WithChanges(new TextChange(new TextSpan(4, 0), "o "));
871var change2 = change1.WithChanges(new TextChange(new TextSpan(6, 0), "World"));
884var change1 = original.WithChanges(new TextChange(new TextSpan(4, 0), "o"));
885var change2 = change1.WithChanges(new TextChange(new TextSpan(6, 0), "World"));
900var change1 = original.WithChanges(new TextChange(new TextSpan(8, 0), "l"));
901var change2 = change1.WithChanges(new TextChange(new TextSpan(4, 0), "o"));
916var change1 = original.WithChanges(new TextChange(new TextSpan(4, 0), " World"));
918var change2 = change1.WithChanges(new TextChange(new TextSpan(4, 0), "o"));
934c => c.WithChanges(new TextChange(new TextSpan(4, 0), "o ")),
935c => c.WithChanges(new TextChange(new TextSpan(6, 0), "World")));
977Assert.Equal("new TextChange(new TextSpan(0, 1), \"abc\")", new TextChange(new TextSpan(0, 1), "abc").GetDebuggerDisplay());
978Assert.Equal("new TextChange(new TextSpan(0, 1), (NewLength = 10))", new TextChange(new TextSpan(0, 1), "0123456789").GetDebuggerDisplay());
1002var newChange = new TextChange(new TextSpan(i, length: random.Next(originalText.Length - i)), newText);
1022var newChange = new TextChange(new TextSpan(i, length: random.Next(editedLength - i)), newText);
1070var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 2), "a"));
1071var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 2), "bb"));
1084var change1 = original.WithChanges(new TextChange(new TextSpan(0, 0), "aa"), new TextChange(new TextSpan(1, 1), "aa"));
1085var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 1), "b"), new TextChange(new TextSpan(2, 2), ""));
1098var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 0), "a"));
1099var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 2), ""), new TextChange(new TextSpan(2, 0), "bb"));
1112var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 1), "aa"), new TextChange(new TextSpan(3, 1), "aa"));
1113var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 0), "bbb"));
1125var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 3), "a"), new TextChange(new TextSpan(5, 0), "aaa"));
1126var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 2), ""), new TextChange(new TextSpan(3, 1), "bb"));
1139var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 1), "aaaaa"), new TextChange(new TextSpan(3, 1), "aaaa"), new TextChange(new TextSpan(6, 1), "aaaaa"));
1140var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 0), "b"), new TextChange(new TextSpan(2, 0), "b"), new TextChange(new TextSpan(3, 4), "bbbbb"), new TextChange(new TextSpan(9, 5), "bbbbb"), new TextChange(new TextSpan(15, 3), ""));
1153var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 1), "a"));
1154var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 1), "b"), new TextChange(new TextSpan(2, 2), "b"));
1167var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 1), "aa"));
1168var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 0), "b"), new TextChange(new TextSpan(1, 2), "b"));
1181var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 2), "a"), new TextChange(new TextSpan(3, 2), "a"));
1182var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 3), "bbb"));
1195var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 4), ""), new TextChange(new TextSpan(5, 1), ""));
1196var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 1), ""), new TextChange(new TextSpan(1, 0), ""));
1209var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 2), ""), new TextChange(new TextSpan(3, 1), ""), new TextChange(new TextSpan(4, 0), ""), new TextChange(new TextSpan(4, 0), ""), new TextChange(new TextSpan(4, 0), ""));
1210var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 1), ""), new TextChange(new TextSpan(1, 1), ""), new TextChange(new TextSpan(2, 0), ""));
1223var change1 = originalText.WithChanges(new TextChange(new TextSpan(0, 1), ""), new TextChange(new TextSpan(2, 1), ""));
1224var change2 = change1.WithChanges(new TextChange(new TextSpan(0, 0), ""), new TextChange(new TextSpan(1, 1), ""));
1249new TextChange(new TextSpan(39, 0), " "),
1250new TextChange(new TextSpan(42, 0), " "),
1251new TextChange(new TextSpan(57, 0), " "),
1252new TextChange(new TextSpan(58, 0), "\r\n"),
1253new TextChange(new TextSpan(64, 2), " "),
1254new TextChange(new TextSpan(69, 0), " "),
1260new TextChange(new TextSpan(35, 4), string.Empty),
1261new TextChange(new TextSpan(46, 4), string.Empty),
1262new TextChange(new TextSpan(73, 4), string.Empty),
1263new TextChange(new TextSpan(88, 0), " "),
1264new TextChange(new TextSpan(90, 4), string.Empty),
1265new TextChange(new TextSpan(105, 4), string.Empty),
Microsoft.CodeAnalysis.VisualBasic.CodeStyle (3)
Microsoft.CodeAnalysis.VisualBasic.EditorFeatures (2)
Microsoft.CodeAnalysis.VisualBasic.Features (6)
Microsoft.CodeAnalysis.VisualBasic.Syntax.UnitTests (14)
IncrementalParser\IncrementalParser.vb (14)
88text = text.WithChanges(New TextChange(span, text.ToString(span)))
109Dim newText = text.WithChanges(New TextChange(New TextSpan(text.Length, 0), _s.Substring(i, 1)))
126Dim newText = oldText.WithChanges(New TextChange(New TextSpan(pos, 0), "'"))
135Dim anotherText = newText.WithChanges(New TextChange(New TextSpan(pos, 1), ""))
702Dim newText = oldText.WithChanges(New TextChange(New TextSpan(22, 0), " Sub "))
741Dim newText = oldText.WithChanges(New TextChange(New TextSpan(103, 0), " "))
767Dim newText = oldText.WithChanges(New TextChange(New TextSpan(insertionPoint, 0), " "))
792Dim newText = oldText.WithChanges(New TextChange(New TextSpan(insertionPoint, replace.Length), "{"))
827Dim newText = oldText.WithChanges(New TextChange(New TextSpan(pos, 0), "'"))
1121Dim change = New TextChange(span, "")
1158Dim change = New TextChange(span, code1)
1164change = New TextChange(span, "")
1521New TextChange(TextSpan.FromBounds(29, 45), ""))
1674Dim change = New TextChange(New TextSpan(position, 2), "71")
Microsoft.CodeAnalysis.VisualBasic.Test.Utilities (5)
Microsoft.CodeAnalysis.VisualBasic.Workspaces (3)
Microsoft.CodeAnalysis.Workspaces (9)
Microsoft.CodeAnalysis.Workspaces.Test.Utilities (1)
Microsoft.CodeAnalysis.Workspaces.UnitTests (7)
Microsoft.VisualStudio.LanguageServices (4)
Microsoft.VisualStudio.LanguageServices.UnitTests (3)
Roslyn.Diagnostics.Analyzers (4)
Roslyn.Diagnostics.CSharp.Analyzers (2)
Roslyn.Diagnostics.VisualBasic.Analyzers (3)
Roslyn.VisualStudio.Next.UnitTests (3)
Test.Utilities (4)
Text.Analyzers (4)
1091 references to TextChange
GenerateDocumentationAndConfigFiles (36)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Metrics (31)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Metrics.Legacy (31)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Microsoft.AspNetCore.App.Analyzers (2)
Microsoft.CodeAnalysis (29)
Microsoft.CodeAnalysis.Analyzers (38)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Microsoft.CodeAnalysis.AnalyzerUtilities (31)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Microsoft.CodeAnalysis.BannedApiAnalyzers (36)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Microsoft.CodeAnalysis.CodeStyle (33)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Microsoft.CodeAnalysis.CodeStyle.Fixes (11)
src\Analyzers\Core\CodeFixes\ConflictMarkerResolution\AbstractConflictMarkerCodeFixProvider.cs (6)
316Action<SourceText, ArrayBuilder<TextChange>, int, int, int, int> addEdits,
321using var _ = ArrayBuilder<TextChange>.GetInstance(out var edits);
329SourceText text, ArrayBuilder<TextChange> edits,
342SourceText text, ArrayBuilder<TextChange> edits,
355SourceText text, ArrayBuilder<TextChange> edits,
412using var _ = ArrayBuilder<TextChange>.GetInstance(out var edits);
Microsoft.CodeAnalysis.CSharp (1)
Microsoft.CodeAnalysis.CSharp.CodeStyle (8)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (8)
Microsoft.CodeAnalysis.CSharp.EditorFeatures (32)
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (4)
Microsoft.CodeAnalysis.CSharp.Features (32)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (1)
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (1)
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (29)
IncrementalParsing\IncrementalParsingTests.cs (29)
496var change = new TextChange(span, ".");
528var change = new TextChange(span, " ");
3331var change = new TextChange(span, text1);
3414var change = new TextChange(span, "// ");
3451var change = new TextChange(span, "// ");
3530var change = new TextChange(new TextSpan(0, 0), items[1]); // Prepend
3629var change = new TextChange(span, "p");
3650var change = new TextChange(span, "");
3671var change = new TextChange(span, "[");
3692var change = new TextChange(span, "[Obsolete]");
3713var change = new TextChange(span, "public");
3735var change = new TextChange(span, "c");
3759var change = new TextChange(span, "1, Attr2");
3783var change = new TextChange(span, ", Attr2");
3807var change = new TextChange(span, " [Attr2]");
3831var change = new TextChange(span, "Arg");
3855var change = new TextChange(span, "2");
3881var change = new TextChange(span, "1, Attr2");
3906var change = new TextChange(span, "[Attr]");
3932var change = new TextChange(span, " [Attr2]");
3958var change = new TextChange(span, "");
3976var change = new TextChange(span, ".z");
3994var change = new TextChange(span, " if (c) { }");
4012var change = new TextChange(span, " else (c) { }");
4026var change = new TextChange(span, "");
4040var change = new TextChange(span, "{ ");
4055var change = new TextChange(span, "");
4092var change = new TextChange(span, "[");
4157new TextChange[] {
Microsoft.CodeAnalysis.CSharp.Workspaces (12)
Microsoft.CodeAnalysis.EditorFeatures (68)
CommentSelection\CommentUncommentSelectionCommandHandler.cs (10)
79var textChanges = ArrayBuilder<TextChange>.GetInstance();
100ArrayBuilder<TextChange> textChanges, ArrayBuilder<CommentTrackingSpan> trackingSpans)
162private static void AddSingleLineComments(SnapshotSpan span, ArrayBuilder<TextChange> textChanges, ArrayBuilder<CommentTrackingSpan> trackingSpans, ITextSnapshotLine firstLine, ITextSnapshotLine lastLine, CommentSelectionInfo commentInfo)
171private static void AddBlockComment(SnapshotSpan span, ArrayBuilder<TextChange> textChanges, ArrayBuilder<CommentTrackingSpan> trackingSpans, CommentSelectionInfo commentInfo)
183ArrayBuilder<TextChange> textChanges, ArrayBuilder<CommentTrackingSpan> spansToSelect)
211private static bool TryUncommentExactlyBlockComment(CommentSelectionInfo info, SnapshotSpan span, ArrayBuilder<TextChange> textChanges,
229private static void UncommentContainingBlockComment(CommentSelectionInfo info, SnapshotSpan span, ArrayBuilder<TextChange> textChanges,
257private static void UncommentPosition(CommentSelectionInfo info, ArrayBuilder<TextChange> textChanges,
270private static bool TryUncommentSingleLineComments(CommentSelectionInfo info, SnapshotSpan span, ArrayBuilder<TextChange> textChanges,
302CommentSelectionInfo info, ArrayBuilder<TextChange> textChanges, ITextSnapshotLine firstLine, ITextSnapshotLine lastLine, int indentToCommentAt)
ExternalAccess\VSTypeScript\Api\IVSTypeScriptFormattingInteractionService.cs (4)
31Task<ImmutableArray<TextChange>> GetFormattingChangesAsync(Document document, TextSpan? textSpan, DocumentOptionSet? documentOptions, CancellationToken cancellationToken);
36Task<ImmutableArray<TextChange>> GetFormattingChangesOnPasteAsync(Document document, TextSpan textSpan, DocumentOptionSet? documentOptions, CancellationToken cancellationToken);
43Task<ImmutableArray<TextChange>> GetFormattingChangesAsync(Document document, char typedChar, int position, DocumentOptionSet? documentOptions, CancellationToken cancellationToken);
48Task<ImmutableArray<TextChange>> GetFormattingChangesOnReturnAsync(Document document, int position, DocumentOptionSet? documentOptions, CancellationToken cancellationToken);
ExternalAccess\VSTypeScript\VSTypeScriptFormattingInteractionService.cs (4)
33public Task<ImmutableArray<TextChange>> GetFormattingChangesAsync(Document document, ITextBuffer textBuffer, TextSpan? textSpan, CancellationToken cancellationToken)
36public Task<ImmutableArray<TextChange>> GetFormattingChangesOnPasteAsync(Document document, ITextBuffer textBuffer, TextSpan textSpan, CancellationToken cancellationToken)
39public Task<ImmutableArray<TextChange>> GetFormattingChangesAsync(Document document, ITextBuffer textBuffer, char typedChar, int position, CancellationToken cancellationToken)
42public Task<ImmutableArray<TextChange>> GetFormattingChangesOnReturnAsync(Document document, int position, CancellationToken cancellationToken)
Formatting\IFormattingInteractionService.cs (4)
31Task<ImmutableArray<TextChange>> GetFormattingChangesAsync(Document document, ITextBuffer textBuffer, TextSpan? textSpan, CancellationToken cancellationToken);
36Task<ImmutableArray<TextChange>> GetFormattingChangesOnPasteAsync(Document document, ITextBuffer textBuffer, TextSpan textSpan, CancellationToken cancellationToken);
43Task<ImmutableArray<TextChange>> GetFormattingChangesAsync(Document document, ITextBuffer textBuffer, char typedChar, int position, CancellationToken cancellationToken);
48Task<ImmutableArray<TextChange>> GetFormattingChangesOnReturnAsync(Document document, int position, CancellationToken cancellationToken);
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (7)
Microsoft.CodeAnalysis.EditorFeatures.Text (2)
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (9)
CommentSelection\CommentUncommentSelectionCommandHandlerTests.cs (7)
704private static void UncommentSelection(string code, IEnumerable<TextChange> expectedChanges, Span expectedSelectedSpan, bool supportBlockComments)
707private static void UncommentSelection(string code, IEnumerable<TextChange> expectedChanges, IEnumerable<Span> expectedSelectedSpans, bool supportBlockComments)
710private static void CommentSelection(string code, IEnumerable<TextChange> expectedChanges, bool supportBlockComments)
713private static void CommentSelection(string code, IEnumerable<TextChange> expectedChanges, IEnumerable<Span> expectedSelectedSpans, bool supportBlockComments)
716private static void CommentSelection(ExportProvider exportProvider, ITextView textView, IEnumerable<TextChange> expectedChanges, IEnumerable<Span> expectedSelectedSpans, bool supportBlockComments)
724IEnumerable<TextChange> expectedChanges,
740IEnumerable<TextChange> expectedChanges,
Microsoft.CodeAnalysis.EditorFeatures2.UnitTests (1)
Microsoft.CodeAnalysis.ExternalAccess.AspNetCore (1)
Microsoft.CodeAnalysis.ExternalAccess.Copilot (3)
Microsoft.CodeAnalysis.ExternalAccess.FSharp (15)
Internal\Editor\FSharpEditorFormattingService.cs (8)
44public Task<IList<TextChange>> GetFormattingChangesAsync(Document document, TextSpan? textSpan, CancellationToken cancellationToken)
49public Task<IList<TextChange>?> GetFormattingChangesAsync(Document document, char typedChar, int position, CancellationToken cancellationToken)
54public Task<IList<TextChange>> GetFormattingChangesOnPasteAsync(Document document, TextSpan textSpan, CancellationToken cancellationToken)
59public Task<IList<TextChange>?> GetFormattingChangesOnReturnAsync(Document document, int position, CancellationToken cancellationToken)
79async Task<ImmutableArray<TextChange>> IFormattingInteractionService.GetFormattingChangesAsync(Document document, ITextBuffer textBuffer, TextSpan? textSpan, CancellationToken cancellationToken)
85async Task<ImmutableArray<TextChange>> IFormattingInteractionService.GetFormattingChangesAsync(Document document, ITextBuffer textBuffer, char typedChar, int position, CancellationToken cancellationToken)
91async Task<ImmutableArray<TextChange>> IFormattingInteractionService.GetFormattingChangesOnPasteAsync(Document document, ITextBuffer textBuffer, TextSpan textSpan, CancellationToken cancellationToken)
97async Task<ImmutableArray<TextChange>> IFormattingInteractionService.GetFormattingChangesOnReturnAsync(Document document, int position, CancellationToken cancellationToken)
Microsoft.CodeAnalysis.ExternalAccess.OmniSharp (2)
Microsoft.CodeAnalysis.ExternalAccess.Razor.Features (6)
Microsoft.CodeAnalysis.Features (134)
AddImport\AddImportFixData.cs (6)
18ImmutableArray<TextChange> textChanges,
41public readonly ImmutableArray<TextChange> TextChanges = textChanges;
113public static AddImportFixData CreateForProjectSymbol(ImmutableArray<TextChange> textChanges, string title, ImmutableArray<string> tags, CodeActionPriority priority, ProjectId projectReferenceToAdd)
121public static AddImportFixData CreateForMetadataSymbol(ImmutableArray<TextChange> textChanges, string title, ImmutableArray<string> tags, CodeActionPriority priority, ProjectId portableExecutableReferenceProjectId, string portableExecutableReferenceFilePathToAdd)
130public static AddImportFixData CreateForReferenceAssemblySymbol(ImmutableArray<TextChange> textChanges, string title, string assemblyReferenceAssemblyName, string assemblyReferenceFullyQualifiedTypeName)
139public static AddImportFixData CreateForPackageSymbol(ImmutableArray<TextChange> textChanges, string packageSource, string packageName, string packageVersionOpt)
Completion\CommonCompletionProvider.cs (5)
82var change = await GetTextChangeAsync(document, item, ch: '\t', cancellationToken: cancellationToken).ConfigureAwait(false) ??
112var change = (await GetTextChangeAsync(document, item, commitKey, cancellationToken).ConfigureAwait(false))
117public virtual Task<TextChange?> GetTextChangeAsync(Document document, CompletionItem selectedItem, char? ch, CancellationToken cancellationToken)
120protected virtual Task<TextChange?> GetTextChangeAsync(CompletionItem selectedItem, char? ch, CancellationToken cancellationToken)
121=> SpecializedTasks.Default<TextChange?>();
Completion\CompletionChange.cs (20)
21public TextChange TextChange { get; }
28public ImmutableArray<TextChange> TextChanges { get; }
52TextChange textChange, ImmutableArray<TextChange> textChanges, int? newPosition, bool includesCommitCharacter)
58TextChange textChange, ImmutableArray<TextChange> textChanges, int? newPosition, bool includesCommitCharacter, ImmutableDictionary<string, string> properties)
64TextChange textChange, ImmutableArray<TextChange> textChanges, TextSpan? newSelection, bool includesCommitCharacter, ImmutableDictionary<string, string> properties)
86/// are multiple entries, <see cref="Create(TextChange, ImmutableArray{TextChange}, int?, bool)"/> must be called instead,
91ImmutableArray<TextChange> textChanges,
101TextChange textChange,
113TextChange textChange,
114ImmutableArray<TextChange> textChanges,
122TextChange textChange,
123ImmutableArray<TextChange> textChanges,
132TextChange textChange,
133ImmutableArray<TextChange> textChanges,
144public CompletionChange WithTextChange(TextChange textChange)
150public CompletionChange WithTextChanges(ImmutableArray<TextChange> textChanges)
Snippets\RoslynLSPSnippetConverter.cs (7)
22public static async Task<string> GenerateLSPSnippetAsync(Document document, int caretPosition, ImmutableArray<SnippetPlaceholder> placeholders, TextChange textChange, int triggerLocation, CancellationToken cancellationToken)
24var extendedTextChange = await ExtendSnippetTextChangeAsync(document, textChange, placeholders, caretPosition, triggerLocation, cancellationToken).ConfigureAwait(false);
32private static string ConvertToLSPSnippetString(TextChange textChange, ImmutableArray<SnippetPlaceholder> placeholders, int caretPosition)
108private static async Task<TextChange> ExtendSnippetTextChangeAsync(Document document, TextChange textChange, ImmutableArray<SnippetPlaceholder> placeholders, int caretPosition, int triggerLocation, CancellationToken cancellationToken)
113var newTextChange = new TextChange(extendedSpan, newString);
123private static TextSpan GetUpdatedTextSpan(TextChange textChange, ImmutableArray<SnippetPlaceholder> placeholders, int caretPosition, int triggerLocation)
src\Analyzers\Core\CodeFixes\ConflictMarkerResolution\AbstractConflictMarkerCodeFixProvider.cs (6)
316Action<SourceText, ArrayBuilder<TextChange>, int, int, int, int> addEdits,
321using var _ = ArrayBuilder<TextChange>.GetInstance(out var edits);
329SourceText text, ArrayBuilder<TextChange> edits,
342SourceText text, ArrayBuilder<TextChange> edits,
355SourceText text, ArrayBuilder<TextChange> edits,
412using var _ = ArrayBuilder<TextChange>.GetInstance(out var edits);
Microsoft.CodeAnalysis.LanguageServer.Protocol (16)
Microsoft.CodeAnalysis.LanguageServer.Protocol.UnitTests (3)
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (36)
Microsoft.CodeAnalysis.PublicApiAnalyzers (31)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Microsoft.CodeAnalysis.Remote.ServiceHub (3)
Microsoft.CodeAnalysis.Remote.Workspaces (1)
Microsoft.CodeAnalysis.ResxSourceGenerator (31)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Microsoft.CodeAnalysis.UnitTests (15)
Microsoft.CodeAnalysis.VisualBasic (1)
Microsoft.CodeAnalysis.VisualBasic.CodeStyle (8)
Microsoft.CodeAnalysis.VisualBasic.EditorFeatures (2)
Microsoft.CodeAnalysis.VisualBasic.Features (5)
Microsoft.CodeAnalysis.VisualBasic.Workspaces (10)
Microsoft.CodeAnalysis.Workspaces (124)
CodeFixes\FixAllOccurrences\TextChangeMerger.cs (29)
22private readonly struct IntervalIntrospector : IIntervalIntrospector<TextChange>
24public TextSpan GetSpan(TextChange value)
31private readonly SimpleMutableIntervalTree<TextChange, IntervalIntrospector> _totalChangesIntervalTree =
32SimpleMutableIntervalTree.Create(new IntervalIntrospector(), Array.Empty<TextChange>());
54foreach (var change in currentChanges)
82SimpleMutableIntervalTree<TextChange, IntervalIntrospector> cumulativeChanges,
83ImmutableArray<TextChange> currentChanges)
85using var overlappingSpans = TemporaryArray<TextChange>.Empty;
86using var intersectingSpans = TemporaryArray<TextChange>.Empty;
95SimpleMutableIntervalTree<TextChange, IntervalIntrospector> cumulativeChanges,
96ImmutableArray<TextChange> currentChanges,
97ref TemporaryArray<TextChange> overlappingSpans,
98ref TemporaryArray<TextChange> intersectingSpans)
100foreach (var change in currentChanges)
125TextChange change,
126in TemporaryArray<TextChange> overlappingSpans,
127in TemporaryArray<TextChange> intersectingSpans)
148private static bool IsPureInsertion(TextChange change)
152TextChange change,
153in TemporaryArray<TextChange> overlappingSpans,
154in TemporaryArray<TextChange> intersectingSpans)
181var otherChange = intersectingSpans[0];
199TextChange change,
200in TemporaryArray<TextChange> overlappingSpans,
201in TemporaryArray<TextChange> intersectingSpans)
210TextChange change,
211in TemporaryArray<TextChange> overlappingSpans)
230TextChange change,
231in TemporaryArray<TextChange> intersectingSpans)
Formatting\Formatter.cs (9)
268public static IList<TextChange> GetFormattedTextChanges(SyntaxNode node, Workspace workspace, OptionSet? options = null, CancellationToken cancellationToken = default)
271internal static IList<TextChange> GetFormattedTextChanges(SyntaxNode node, SolutionServices services, SyntaxFormattingOptions options, CancellationToken cancellationToken)
283public static IList<TextChange> GetFormattedTextChanges(SyntaxNode node, TextSpan span, Workspace workspace, OptionSet? options = null, CancellationToken cancellationToken = default)
286internal static IList<TextChange> GetFormattedTextChanges(SyntaxNode node, TextSpan span, SolutionServices services, SyntaxFormattingOptions options, CancellationToken cancellationToken = default)
298public static IList<TextChange> GetFormattedTextChanges(SyntaxNode node, IEnumerable<TextSpan>? spans, Workspace workspace, OptionSet? options = null, CancellationToken cancellationToken = default)
301internal static IList<TextChange> GetFormattedTextChanges(SyntaxNode node, IEnumerable<TextSpan>? spans, SolutionServices services, SyntaxFormattingOptions options, CancellationToken cancellationToken = default)
304private static IList<TextChange> GetFormattedTextChanges(SyntaxNode node, IEnumerable<TextSpan>? spans, Workspace workspace, OptionSet? options, ImmutableArray<AbstractFormattingRule> rules, CancellationToken cancellationToken)
308? SpecializedCollections.EmptyList<TextChange>()
312internal static IList<TextChange> GetFormattedTextChanges(SyntaxNode node, IEnumerable<TextSpan>? spans, SolutionServices services, SyntaxFormattingOptions options, ImmutableArray<AbstractFormattingRule> rules, CancellationToken cancellationToken = default)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Microsoft.CodeAnalysis.Workspaces.Test.Utilities (3)
Microsoft.VisualStudio.LanguageServices (23)
Venus\ContainedDocument.cs (17)
214public ITextSnapshot ApplyChanges(IEnumerable<TextChange> changes)
233private ITextSnapshot ApplyChanges(SourceText originalText, IEnumerable<TextChange> changes)
261private IEnumerable<TextChange> FilterTextChanges(SourceText originalText, List<TextSpan> editorVisibleSpansInOriginal, IEnumerable<TextChange> changes)
270using var pooledObject = SharedPools.Default<List<TextChange>>().GetPooledObject();
328private static bool WhitespaceOnEdges(TextSpan visibleTextSpan, TextChange change)
348private IEnumerable<TextChange> GetSubTextChanges(SourceText originalText, TextChange changeInOriginalText, TextSpan visibleSpanInOriginalText)
350using var changes = SharedPools.Default<List<TextChange>>().GetPooledObject();
365SourceText originalText, TextSpan visibleSpanInOriginalText, string leftText, string rightText, int offsetInOriginalText, List<TextChange> changes)
386if (TryGetSubTextChange(originalText, visibleSpanInOriginalText, rightText, spanInOriginalText, spanInRightText, out var textChange))
398private IEnumerable<TextChange> GetSubTextChanges(
417if (TryGetSubTextChange(originalText, visibleSpanInOriginalText, rightText, spanInOriginalText, spanInRightText.ToTextSpan(), out var textChange))
504string rightText, TextSpan spanInOriginalText, TextSpan spanInRightText, out TextChange textChange)
720IEnumerable<TextChange> changes,
730foreach (var change in changes)
818foreach (var change in newChanges)
Microsoft.VisualStudio.LanguageServices.LiveShare (1)
Microsoft.VisualStudio.LanguageServices.UnitTests (2)
Microsoft.VisualStudio.LanguageServices.Xaml (3)
Roslyn.Diagnostics.Analyzers (36)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Roslyn.Diagnostics.CSharp.Analyzers (8)
Roslyn.Diagnostics.VisualBasic.Analyzers (8)
Test.Utilities (31)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)
Text.Analyzers (36)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Formatting\TriviaEngine\AbstractTriviaFormatter.cs (10)
189protected abstract LineColumnDelta Format(LineColumn lineColumn, SyntaxTrivia trivia, ArrayBuilder<TextChange> changes, CancellationToken cancellationToken);
265public ImmutableArray<TextChange> FormatToTextChanges(CancellationToken cancellationToken)
267using var _ = ArrayBuilder<TextChange>.GetInstance(out var changes);
674private void AddExtraLines(int linesBetweenTokens, ArrayBuilder<TextChange> changes)
702var change = GetWhitespaceTextChange(
712private bool TryGetMatchingChangeIndex(ArrayBuilder<TextChange> changes, out int index)
719var change = changes[i];
730private TextSpan GetInsertionSpan(ArrayBuilder<TextChange> changes)
822private TextChange GetWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span)
825private void AddWhitespaceTextChange(LineColumn lineColumn, LineColumnDelta delta, TextSpan span, ArrayBuilder<TextChange> changes)