72 references to Span
Microsoft.CodeAnalysis.CSharp.EditorFeatures (4)
StringCopyPaste\StringCopyPasteData.cs (4)
100
var firstOverlappingChar = virtualChars.FirstOrNull(vc => vc.
Span
.OverlapsWith(selectionSpan));
101
var lastOverlappingChar = virtualChars.LastOrNull(vc => vc.
Span
.OverlapsWith(selectionSpan));
107
if (selectionSpan.Start > firstOverlappingChar.Value.
Span
.Start)
110
if (selectionSpan.End < lastOverlappingChar.Value.
Span
.End)
Microsoft.CodeAnalysis.CSharp.Features (9)
ConvertBetweenRegularAndVerbatimString\AbstractConvertBetweenRegularAndVerbatimStringCodeRefactoringProvider.cs (1)
179
if (ch.
Span
.Length == 2 && ch != 0)
ConvertToRawString\ConvertToRawStringHelpers.cs (2)
52
if (ch.
Span
.Length > 1)
99
if (ch.
Span
.Length > 1)
EmbeddedLanguages\CSharpTestEmbeddedLanguageClassifier.cs (6)
28
=> TextSpan.FromBounds(vc1.
Span
.Start, vc2.
Span
.End);
88
virtualCharsWithoutMarkup[0].
Span
.Start,
89
virtualCharsWithoutMarkup[^1].
Span
.End));
249
virtualChars[currentEndIndexExclusive - 1].
Span
.End == virtualChars[currentEndIndexExclusive].
Span
.Start)
Microsoft.CodeAnalysis.CSharp.Workspaces.UnitTests (4)
EmbeddedLanguages\VirtualChars\CSharpVirtualCharServiceTests.cs (4)
58
for (var i = ch.
Span
.Start; i < ch.
Span
.End; i++)
90
=> $"[{ConvertRuneToString(vc)},[{vc.
Span
.Start - _statementPrefix.Length},{vc.
Span
.End - _statementPrefix.Length}]]";
Microsoft.CodeAnalysis.ExternalAccess.AspNetCore (2)
EmbeddedLanguages\AspNetCoreVirtualChar.cs (2)
33
/// <inheritdoc cref="VirtualChar.
Span
"/>
34
public TextSpan Span => VirtualChar.
Span
;
Microsoft.CodeAnalysis.Features (34)
EmbeddedLanguages\Classification\AbstractFallbackEmbeddedLanguageClassifier.cs (2)
49
if (vc.
Span
.Length > 1)
50
context.AddClassification(ClassificationTypeNames.StringEscapeCharacter, vc.
Span
);
EmbeddedLanguages\DateAndTime\EmbeddedCompletionContext.cs (2)
64
if (ch.
Span
.End <= startPosition)
66
else if (ch.
Span
.Start >= endPosition)
EmbeddedLanguages\Json\JsonLexer.cs (2)
317
=> TextSpan.FromBounds(Text[startInclusive].
Span
.Start, Text[endExclusive - 1].
Span
.End);
EmbeddedLanguages\Json\JsonParser.cs (3)
497
firstChar.
Span
)));
591
? new TextSpan(_lexer.Text[^1].
Span
.End, 0)
592
: new TextSpan(token.VirtualChars[0].
Span
.Start, 0);
EmbeddedLanguages\Json\JsonParser.StrictSyntaxChecker.cs (6)
103
return new EmbeddedDiagnostic(FeaturesResources.Illegal_whitespace_character, ch.
Span
);
159
return new EmbeddedDiagnostic(FeaturesResources.Value_required, new TextSpan(node.ColonToken.VirtualChars[0].
Span
.End, 0));
229
return new EmbeddedDiagnostic(FeaturesResources.Strings_must_start_with_double_quote_not_single_quote, chars[0].
Span
);
234
return new EmbeddedDiagnostic(FeaturesResources.Illegal_string_character, chars[i].
Span
);
243
return new EmbeddedDiagnostic(FeaturesResources.Invalid_escape_sequence, TextSpan.FromBounds(chars[i].
Span
.Start, chars[i + 1].
Span
.End));
EmbeddedLanguages\Json\LanguageServices\JsonBraceMatcher.cs (1)
79
if (!fullSpan.Value.Contains(ch.
Span
.Start))
EmbeddedLanguages\RegularExpressions\LanguageServices\RegexBraceMatcher.cs (4)
74
: new BraceMatchingResult(open.VirtualChars[0].
Span
, close.VirtualChars[0].
Span
);
86
: new BraceMatchingResult(firstChar.
Span
, lastChar.
Span
);
EmbeddedLanguages\RegularExpressions\RegexLexer.cs (2)
177
=> TextSpan.FromBounds(Text[startInclusive].
Span
.Start, Text[endExclusive - 1].
Span
.End);
EmbeddedLanguages\RegularExpressions\RegexParser.cs (4)
369
var firstCharIndex = text.FindIndex(startCharacter.
Span
.Start);
370
var lastCharIndex = text.FindIndex(lastCharacter.
Span
.Start);
732
? new TextSpan(_lexer.Text[^1].
Span
.End, 0)
733
: new TextSpan(token.VirtualChars[0].
Span
.Start, 0);
SpellCheck\AbstractSpellCheckSpanService.cs (6)
161
var spanStart = currentChar.
Span
.Start;
162
var spanEnd = currentChar.
Span
.End;
172
seenEscape = seenEscape || endChar.
Span
.Length > 1;
173
spanEnd = endChar.
Span
.End;
176
else if (endChar == ' ' && endChar.
Span
.Length == 1)
179
spanEnd = endChar.
Span
.End;
src\Analyzers\Core\Analyzers\SimplifyInterpolation\AbstractSimplifyInterpolationHelpers.cs (2)
261
: TextSpan.FromBounds(sequence[0].
Span
.Start, sequence[^1].
Span
.End);
Microsoft.CodeAnalysis.Workspaces (19)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\EmbeddedLanguages\Common\EmbeddedSyntaxHelpers.cs (2)
19
=> TextSpan.FromBounds(firstChar.
Span
.Start, lastChar.
Span
.End);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\EmbeddedLanguages\Common\EmbeddedSyntaxNode.cs (2)
118
start = Math.Min(token.VirtualChars[0].
Span
.Start, start);
119
end = Math.Max(token.VirtualChars[^1].
Span
.End, end);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\EmbeddedLanguages\Common\EmbeddedSyntaxToken.cs (2)
86
Math.Min(VirtualChars.Length == 0 ? int.MaxValue : VirtualChars[0].
Span
.Start,
91
Math.Max(VirtualChars.Length == 0 ? int.MinValue : VirtualChars[^1].
Span
.End,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\EmbeddedLanguages\VirtualChars\AbstractVirtualCharService.cs (9)
86
Debug.Assert(currentVC.
Span
.Start >= token.SpanStart, "First span has to start after the start of the string token");
90
Debug.Assert(currentVC.
Span
.Start == token.SpanStart + 1 ||
91
currentVC.
Span
.Start == token.SpanStart + 2, "First span should start on the second or third char of the string.");
99
Debug.Assert(currentVC.
Span
.End <= nextVC.
Span
.Start, "Virtual character spans have to be ordered.");
108
Debug.Assert(currentVC.
Span
.End == nextVC.
Span
.Start, "Virtual character spans have to be touching.");
118
Debug.Assert(lastVC.
Span
.End == token.Span.End - "\"".Length, "Last span has to end right before the end of the string token.");
122
Debug.Assert(lastVC.
Span
.End == token.Span.End - "\"u8".Length, "Last span has to end right before the end of the string token.");
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\EmbeddedLanguages\VirtualChars\IVirtualCharService.cs (1)
50
/// VirtualChar's <see cref="VirtualChar.
Span
"/> will abut each other, and the union of all of them will cover the
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\EmbeddedLanguages\VirtualChars\VirtualCharGreenSequence.Chunks.cs (3)
41
if (position < new VirtualChar(array[0], tokenStart).
Span
.Start ||
42
position >= new VirtualChar(array[^1], tokenStart).
Span
.End)
50
var span = new VirtualChar(ch, tokenStart).
Span
;