EditAndContinue\CSharpEditAndContinueAnalyzer.cs (54)
434Debug.Assert(span.End == switchExpression.CloseBraceToken.Span.End);
476=> position < node.OpenBraceToken.Span.End ? BlockPart.OpenBrace : BlockPart.CloseBrace;
481BlockPart.OpenBrace => node.OpenBraceToken.Span,
482BlockPart.CloseBrace => node.CloseBraceToken.Span,
495ForEachPart.ForEach => node.ForEachKeyword.Span,
496ForEachPart.VariableDeclaration => TextSpan.FromBounds(node.Type.SpanStart, node.Identifier.Span.End),
497ForEachPart.In => node.InKeyword.Span,
505ForEachPart.ForEach => node.ForEachKeyword.Span,
507ForEachPart.In => node.InKeyword.Span,
516SwitchExpressionPart.SwitchBody => TextSpan.FromBounds(node.SwitchKeyword.SpanStart, node.CloseBraceToken.Span.End),
1695return typeParameter.Identifier.Span;
1730return ((BlockSyntax)node).OpenBraceToken.Span;
1734return TextSpan.FromBounds(usingStatement.UsingKeyword.SpanStart, usingStatement.CloseParenToken.Span.End);
1738return TextSpan.FromBounds(fixedStatement.FixedKeyword.SpanStart, fixedStatement.CloseParenToken.Span.End);
1742return TextSpan.FromBounds(lockStatement.LockKeyword.SpanStart, lockStatement.CloseParenToken.Span.End);
1745return ((StackAllocArrayCreationExpressionSyntax)node).StackAllocKeyword.Span;
1748return ((ImplicitStackAllocArrayCreationExpressionSyntax)node).StackAllocKeyword.Span;
1751return ((TryStatementSyntax)node).TryKeyword.Span;
1754return ((CatchClauseSyntax)node).CatchKeyword.Span;
1761return ((FinallyClauseSyntax)node).FinallyKeyword.Span;
1765return TextSpan.FromBounds(ifStatement.IfKeyword.SpanStart, ifStatement.CloseParenToken.Span.End);
1768return ((ElseClauseSyntax)node).ElseKeyword.Span;
1773(switchStatement.CloseParenToken != default) ? switchStatement.CloseParenToken.Span.End : switchStatement.Expression.Span.End);
1780return TextSpan.FromBounds(whileStatement.WhileKeyword.SpanStart, whileStatement.CloseParenToken.Span.End);
1783return ((DoStatementSyntax)node).DoKeyword.Span;
1787return TextSpan.FromBounds(forStatement.ForKeyword.SpanStart, forStatement.CloseParenToken.Span.End);
1793(commonForEachStatement.AwaitKeyword.Span.Length > 0) ? commonForEachStatement.AwaitKeyword.SpanStart : commonForEachStatement.ForEachKeyword.SpanStart,
1794commonForEachStatement.CloseParenToken.Span.End);
1797return ((LabeledStatementSyntax)node).Identifier.Span;
1801return ((CheckedStatementSyntax)node).Keyword.Span;
1804return ((UnsafeStatementSyntax)node).UnsafeKeyword.Span;
1808return lfd.Identifier.Span;
1825return CombineSpans(localDeclarationStatement.AwaitKeyword.Span, localDeclarationStatement.UsingKeyword.Span, node.Span);
1828return ((AwaitExpressionSyntax)node).AwaitKeyword.Span;
1831return ((AnonymousObjectCreationExpressionSyntax)node).NewKeyword.Span;
1840return ((AnonymousMethodExpressionSyntax)node).DelegateKeyword.Span;
1843return ((QueryExpressionSyntax)node).FromClause.FromKeyword.Span;
1850return ((QueryContinuationSyntax)node).IntoKeyword.Span;
1853return ((FromClauseSyntax)node).FromKeyword.Span;
1856return ((JoinClauseSyntax)node).JoinKeyword.Span;
1859return ((JoinIntoClauseSyntax)node).IntoKeyword.Span;
1862return ((LetClauseSyntax)node).LetKeyword.Span;
1865return ((WhereClauseSyntax)node).WhereKeyword.Span;
1868return ((OrderByClauseSyntax)node).OrderByKeyword.Span;
1875return ((SelectClauseSyntax)node).SelectKeyword.Span;
1878return ((GroupClauseSyntax)node).GroupKeyword.Span;
1894return ((SwitchExpressionSyntax)node).SwitchKeyword.Span;
1897return ((SwitchExpressionArmSyntax)node).EqualsGreaterThanToken.Span;
1917return ((ParenthesizedLambdaExpressionSyntax)lambda).ParameterList.Parameters[ordinal].Identifier.Span;
1921return ((SimpleLambdaExpressionSyntax)lambda).Parameter.Identifier.Span;
1925return ((AnonymousMethodExpressionSyntax)lambda).ParameterList!.Parameters[ordinal].Identifier.Span;
2764insertedForEachStatement.AwaitKeyword.Span,
2780newLocalDeclaration.AwaitKeyword.Span,
Classification\SyntaxClassification\NameSyntaxClassifier.cs (11)
221classifiedSpan = new ClassifiedSpan(token.Span, classification);
229classifiedSpan = new ClassifiedSpan(token.Span, GetClassificationForField(fieldSymbol));
233classifiedSpan = new ClassifiedSpan(token.Span, GetClassificationForMethod(methodSymbol));
237classifiedSpan = new ClassifiedSpan(token.Span, ClassificationTypeNames.PropertyName);
241classifiedSpan = new ClassifiedSpan(token.Span, ClassificationTypeNames.EventName);
250classifiedSpan = new ClassifiedSpan(token.Span, ClassificationTypeNames.ParameterName);
254classifiedSpan = new ClassifiedSpan(token.Span, GetClassificationForLocal(localSymbol));
258classifiedSpan = new ClassifiedSpan(token.Span, ClassificationTypeNames.LabelName);
326result.Add(new ClassifiedSpan(token.Span, ClassificationTypeNames.Keyword));
342result.Add(new ClassifiedSpan(identifierName.Identifier.Span, ClassificationTypeNames.Keyword));
356result.Add(new ClassifiedSpan(identifierName.Identifier.Span, ClassificationTypeNames.Keyword));
FindSymbols\CSharpDeclaredSymbolInfoFactoryService.cs (12)
196localFunction.Identifier.Span,
240typeDeclaration.Identifier.Span,
262enumDeclaration.Identifier.Span,
290ctorDecl.Identifier.Span,
306delegateDecl.Identifier.Span,
320enumMember.Identifier.Span,
334eventDecl.Identifier.Span,
348indexerDecl.ThisKeyword.Span,
363method.Identifier.Span,
379property.Identifier.Span,
402variableDeclarator.Identifier.Span,
452parameter.Identifier.Span,
Rename\CSharpRenameRewriterLanguageService.cs (16)
215var shouldCheckTrivia = _stringAndCommentTextSpans.ContainsKey(token.Span);
341AddModifiedSpan(annotation.OriginalSpan, newToken.Span);
352var symbols = RenameUtilities.GetSymbolsTouchingPosition(token.Span.Start, _semanticModel, _solution.Services, _cancellationToken);
355var prefix = isRenameLocation && _renameLocations[token.Span].IsRenamableAccessor
392var oldSpan = token.Span;
395AddModifiedSpan(oldSpan, newToken.Span);
411token.Span,
421newToken = _renameAnnotations.WithAdditionalAnnotations(newToken, renameAnnotation, new RenameTokenSimplificationAnnotation() { OriginalTextSpan = token.Span });
492identifierToken.Span,
529return _renameLocations.ContainsKey(token.Span);
649var oldSpan = oldToken.Span;
651AddModifiedSpan(oldSpan, newToken.Span);
691!_stringAndCommentTextSpans.TryGetValue(oldToken.Span, out subSpansToReplace)))
718newToken = newToken.CopyAnnotationsTo(_renameAnnotations.WithAdditionalAnnotations(newIdentifierToken, new RenameTokenSimplificationAnnotation() { OriginalTextSpan = oldToken.Span }));
719AddModifiedSpan(oldToken.Span, newToken.Span);
EditAndContinue\VisualBasicEditAndContinueAnalyzer.vb (24)
397Return (TextSpan.FromBounds(propertyStatement.Identifier.Span.Start, propertyStatement.Initializer.Span.End), Nothing)
401Return (TextSpan.FromBounds(propertyStatement.Identifier.Span.Start, propertyStatement.AsClause.Span.End), Nothing)
1602Return DirectCast(node, TypeParameterSyntax).Identifier.Span
1641Return DirectCast(node, SingleLineElseClauseSyntax).ElseKeyword.Span
1644Return DirectCast(node, TryBlockSyntax).TryStatement.TryKeyword.Span
1647Return DirectCast(node, CatchBlockSyntax).CatchStatement.CatchKeyword.Span
1650Return DirectCast(node, FinallyBlockSyntax).FinallyStatement.FinallyKeyword.Span
1676Return DirectCast(node, AwaitExpressionSyntax).AwaitKeyword.Span
1680Return TextSpan.FromBounds(newWith.NewKeyword.Span.Start,
1681newWith.Initializer.WithKeyword.Span.End)
1693Return DirectCast(node, WhereClauseSyntax).WhereKeyword.Span
1696Return DirectCast(node, SelectClauseSyntax).SelectKeyword.Span
1699Return DirectCast(node, FromClauseSyntax).FromKeyword.Span
1702Return DirectCast(node, AggregateClauseSyntax).AggregateKeyword.Span
1705Return DirectCast(node, LetClauseSyntax).LetKeyword.Span
1708Return DirectCast(node, SimpleJoinClauseSyntax).JoinKeyword.Span
1712Return TextSpan.FromBounds(groupJoin.GroupKeyword.SpanStart, groupJoin.JoinKeyword.Span.End)
1715Return DirectCast(node, GroupByClauseSyntax).GroupKeyword.Span
1727Return TextSpan.FromBounds(partition.SkipOrTakeKeyword.SpanStart, partition.WhileKeyword.Span.End)
1734Return DirectCast(node, JoinConditionSyntax).EqualsKeyword.Span
1742Return TextSpan.FromBounds(ifKeyword.Span.Start,
1743If(thenKeywordOpt.RawKind <> 0, thenKeywordOpt.Span.End, condition.Span.End))
1822Return TextSpan.FromBounds(startToken.SpanStart, endToken.Span.End)
1835Return TextSpan.FromBounds(startToken.SpanStart, endToken.Span.End)