1 write to Parent
Microsoft.CodeAnalysis (1)
Syntax\SyntaxToken.cs (1)
35Parent = parent;
2606 references to Parent
Microsoft.CodeAnalysis (19)
Syntax\SyntaxNavigator.cs (6)
533if (current.Parent != null) 548foreach (var child in current.Parent.ChildNodesAndTokens()) 577return GetNextToken(current.Parent, predicate, stepInto); 587if (current.Parent != null) 602foreach (var child in current.Parent.ChildNodesAndTokens().Reverse()) 631return GetPreviousToken(current.Parent, predicate, stepInto);
Syntax\SyntaxNode.cs (3)
544node = ((IStructuredTriviaSyntax)node).ParentTrivia.Token.Parent; 822parent = structuredTrivia.ParentTrivia.Token.Parent; 967.Parent
Syntax\SyntaxNodeExtensions_Tracking.cs (2)
160node = ((IStructuredTriviaSyntax)node).ParentTrivia.Token.Parent!; 185node = ((IStructuredTriviaSyntax)node).ParentTrivia.Token.Parent!;
Syntax\SyntaxNodeOrToken.cs (1)
775return new SyntaxNodeOrToken(token.Parent, token.Node, token.Position, token.Index);
Syntax\SyntaxToken.cs (5)
229return Parent?.IsPartOfStructuredTrivia() ?? false; 557return Parent == other.Parent && 577return Hash.Combine(Parent, Hash.Combine(Node, Hash.Combine(Position, Index))); 640public SyntaxTree? SyntaxTree => Parent?.SyntaxTree;
Syntax\SyntaxTokenList.cs (1)
39_parent = token.Parent;
Syntax\SyntaxTrivia.cs (1)
142return Token.Parent?.IsPartOfStructuredTrivia() ?? false;
Microsoft.CodeAnalysis.CodeStyle (23)
AbstractConsecutiveStatementPlacementDiagnosticAnalyzer.cs (1)
83var nextTokenContainingStatement = nextToken.Parent?.FirstAncestorOrSelf<TExecutableStatementSyntax>();
BottomUpBaseIndentationFinder.cs (4)
231var current = token.Parent; 238current = ((IStructuredTriviaSyntax)current).ParentTrivia.Token.Parent; 249var startNode = token.Parent; 280var startNode = token.Parent;
CommonFormattingHelpers.cs (2)
275var parentNode = GetParentThatContainsGivenSpan(token.Parent, backwardPosition, forward: false); 306var parentNode = GetParentThatContainsGivenSpan(token.Parent, forwardPosition, forward: true);
FormattingContext.InitialContextFinder.cs (1)
148var startNode = token.Parent;
SemanticModelExtensions.cs (1)
33=> semanticModel.GetSymbolInfo(token.Parent!, cancellationToken);
SyntaxNodeExtensions.cs (1)
805parent = structuredTrivia.ParentTrivia.Token.Parent;
SyntaxTokenExtensions.cs (12)
19=> token.Parent?.FirstAncestorOrSelf(predicate); 27return token.Parent != null 28? token.Parent.AncestorsAndSelf().OfType<T>() 34return token.Parent != null 35? token.Parent.AncestorsAndSelf().Where(predicate) 45if (token1.Parent == null || token2.Parent == null) 50return token1.Parent.GetCommonRoot(token2.Parent); 55if (token.Parent is not T parentNode) 95? ((ICompilationUnitSyntax)token.Parent!.SyntaxTree!.GetRoot(CancellationToken.None)).EndOfFileToken 165=> token.Parent ?? throw new InvalidOperationException("Token's parent was null");
TreeData.StructuredTrivia.cs (1)
56var parent = _trivia.Token.Parent;
Microsoft.CodeAnalysis.CodeStyle.Fixes (2)
AbstractMakeMethodSynchronousCodeFixProvider.cs (1)
201var nameNode = token.Parent;
DocumentExtensions.cs (1)
120var node = token.Parent!.AncestorsAndSelf().First(a => a.FullSpan.Contains(span));
Microsoft.CodeAnalysis.CSharp (138)
Binder\Binder_AnonymousTypes.cs (1)
91fieldSyntaxNodes[i] = (nameToken.Kind() == SyntaxKind.IdentifierToken) ? (CSharpSyntaxNode)nameToken.Parent! : fieldInitializer;
Binder\BinderFactory.BinderFactoryVisitor.cs (3)
1060var node = token.Parent; 1080return VisitCore(parent.ParentTrivia.Token.Parent); 1397CSharpSyntaxNode curr = (CSharpSyntaxNode)associatedToken.Parent;
Compilation\CSharpCompilation.cs (1)
2420Parent!.FirstAncestorOrSelf<ExternAliasDirectiveSyntax>();
Compilation\CSharpSemanticModel.cs (5)
441CSharpSyntaxNode node = (CSharpSyntaxNode)token.Parent; 793var existingConstructorInitializer = this.Root.FindToken(position).Parent.AncestorsAndSelf().OfType<ConstructorInitializerSyntax>().FirstOrDefault(); 865var existingConstructorInitializer = this.Root.FindToken(position).Parent.AncestorsAndSelf().OfType<PrimaryConstructorBaseTypeSyntax>().FirstOrDefault(); 1617var parentExpr = token.Parent as ExpressionSyntax; 1865var curr = token.Parent;
Compilation\MemberSemanticModel.cs (1)
1575CSharpSyntaxNode node = (CSharpSyntaxNode)token.Parent;
Compilation\MethodBodySemanticModel.cs (2)
244Root.FindToken(position).Parent?.AncestorsAndSelf().OfType<ConstructorInitializerSyntax>().FirstOrDefault()?.Parent == Root) 266if (Root.FindToken(position).Parent?.AncestorsAndSelf().OfType<PrimaryConstructorBaseTypeSyntax>().FirstOrDefault() == typeDecl.PrimaryConstructorBaseTypeIfClass)
Compilation\SpeculativeSemanticModelWithMemberModel.cs (2)
58var attributedNode = model.SyntaxTree.GetRoot().FindToken(position).Parent; 135SyntaxNode? node = Root.FindTokenIncludingCrefAndNameAttributes(position).Parent;
Compilation\SyntaxTreeSemanticModel.cs (4)
162return _binderFactory.GetBinder((CSharpSyntaxNode)token.Parent, position).WithAdditionalFlags(GetSemanticModelBinderFlags()); 700var existingConstructorInitializer = this.Root.FindToken(position).Parent.AncestorsAndSelf().OfType<ConstructorInitializerSyntax>().FirstOrDefault(); 719var existingConstructorInitializer = this.Root.FindToken(position).Parent.AncestorsAndSelf().OfType<PrimaryConstructorBaseTypeSyntax>().FirstOrDefault(); 776CSharpSyntaxNode node = (CSharpSyntaxNode)Root.FindTokenIncludingCrefAndNameAttributes(position).Parent;
Parser\Blender.cs (1)
166for (var parent = token.Parent; // for each parent
SymbolDisplay\SymbolDisplayVisitor_Minimal.cs (4)
52var startNode = token.Parent; 189var startNode = token.Parent; 240var identifier = token.Parent as IdentifierNameSyntax; 252token.Parent switch
Symbols\RangeVariableSymbol.cs (1)
66CSharpSyntaxNode node = (CSharpSyntaxNode)token.Parent;
Symbols\Source\ModifierUtils.cs (3)
30if (readonlyToken.Parent is MethodDeclarationSyntax or AccessorDeclarationSyntax or BasePropertyDeclarationSyntax or EventDeclarationSyntax) 31modifierErrors |= !MessageID.IDS_FeatureReadOnlyMembers.CheckFeatureAvailability(diagnostics, readonlyToken.Parent, readonlyToken.GetLocation()); 405messageId.CheckFeatureAvailability(diagnostics, modifier.Parent, modifier.GetLocation());
Symbols\Source\SourceLocalSymbol.cs (2)
422return _identifierToken.Parent; 429SyntaxNode node = _identifierToken.Parent;
Symbols\Source\SourceMemberFieldSymbol.cs (1)
199MessageID.IDS_FeatureFixedBuffer.CheckFeatureAvailability(diagnostics, modifier.Parent, modifier.GetLocation());
Symbols\Source\SourceParameterSymbol.cs (1)
55identifier.Parent.GetLocation());
Symbols\Symbol.cs (1)
384CSharpSyntaxNode node = token.Parent.FirstAncestorOrSelf<TNode>();
Syntax\CSharpSyntaxNode.cs (1)
414CSharpSyntaxNode? curr = (CSharpSyntaxNode?)triviaToken.Parent;
Syntax\InternalSyntax\CSharpSyntaxNode.cs (1)
305var parent = trivia.Token.Parent;
Syntax\StructuredTriviaSyntax.cs (1)
25var parent = trivia.Token.Parent;
Syntax\SyntaxNormalizer.cs (102)
202if (IsAccessorListWithoutAccessorsWithBlockBody(currentToken.Parent?.Parent)) 207if (nextToken.Parent is InitializerExpressionSyntax or AnonymousObjectCreationExpressionSyntax && 208!IsSingleLineInitializerContext(nextToken.Parent)) 229if (currentToken.Parent is PositionalPatternClauseSyntax) 236IsInitializerInSingleLineContext(nextToken.Parent)) 246return (((currentToken.Parent is StatementSyntax) && nextToken.Parent != currentToken.Parent) 251if (currentToken.Parent is AttributeListSyntax && currentToken.Parent.Parent is not ParameterSyntax) 261if (currentToken.Parent is InitializerExpressionSyntax or AnonymousObjectCreationExpressionSyntax && 262!IsSingleLineInitializerContext(nextToken.Parent)) 266return currentToken.Parent is EnumDeclarationSyntax or SwitchExpressionSyntax ? 1 : 0; 270if (currentToken.Parent is LabeledStatementSyntax || currentToken.Parent is SwitchLabelSyntax) 275case SyntaxKind.SwitchKeyword when currentToken.Parent is SwitchExpressionSyntax: 279if ((nextToken.IsKind(SyntaxKind.FromKeyword) && nextToken.Parent.IsKind(SyntaxKind.FromClause)) || 280(nextToken.IsKind(SyntaxKind.LetKeyword) && nextToken.Parent.IsKind(SyntaxKind.LetClause)) || 281(nextToken.IsKind(SyntaxKind.WhereKeyword) && nextToken.Parent.IsKind(SyntaxKind.WhereClause)) || 282(nextToken.IsKind(SyntaxKind.JoinKeyword) && nextToken.Parent.IsKind(SyntaxKind.JoinClause)) || 283(nextToken.IsKind(SyntaxKind.JoinKeyword) && nextToken.Parent.IsKind(SyntaxKind.JoinIntoClause)) || 284(nextToken.IsKind(SyntaxKind.OrderByKeyword) && nextToken.Parent.IsKind(SyntaxKind.OrderByClause)) || 285(nextToken.IsKind(SyntaxKind.SelectKeyword) && nextToken.Parent.IsKind(SyntaxKind.SelectClause)) || 286(nextToken.IsKind(SyntaxKind.GroupKeyword) && nextToken.Parent.IsKind(SyntaxKind.GroupClause))) 301return (nextToken.Parent is AttributeListSyntax && !(nextToken.Parent.Parent is ParameterSyntax)) ? 1 : 0; 303return currentToken.Parent is TypeParameterListSyntax ? 1 : 0; 319var parent = openBraceToken.Parent; 336var parent = closeBraceToken.Parent; 351var parent = openBraceToken.Parent; 367var currentTokenParent = currentToken.Parent; 373nextToken.Parent is MemberAccessExpressionSyntax or BracketedArgumentListSyntax || // Typical cases: `new [] { ... }.Length` or `new [] { ... }[0]`. When in multiline mode still want to keep them on the same line as closing brace 384nextToken.Parent is PropertyDeclarationSyntax nextProperty && IsSingleLineProperty(nextProperty)) 400nextToken.Parent.IsKind(SyntaxKind.DoStatement)) 417if (currentToken.Parent.IsKind(SyntaxKind.ForStatement)) 425else if (currentToken.Parent.IsKind(SyntaxKind.UsingDirective)) 427return nextToken.Parent.IsKind(SyntaxKind.UsingDirective) ? 1 : 2; 429else if (currentToken.Parent.IsKind(SyntaxKind.ExternAliasDirective)) 431return nextToken.Parent.IsKind(SyntaxKind.ExternAliasDirective) ? 1 : 2; 433else if (currentToken.Parent is AccessorDeclarationSyntax && 434IsAccessorListWithoutAccessorsWithBlockBody(currentToken.Parent.Parent)) 438else if (currentToken.Parent is PropertyDeclarationSyntax property) 448Debug.Assert(((PropertyDeclarationSyntax)currentToken.Parent).SemicolonToken == currentToken); 451nextToken.Parent is PropertyDeclarationSyntax nextProperty && 470if (token.Parent.IsKind(SyntaxKind.PropertyPatternClause)) 472propPattern = (PropertyPatternClauseSyntax)token.Parent; 474else if (next.Parent.IsKind(SyntaxKind.PropertyPatternClause)) 476propPattern = (PropertyPatternClauseSyntax)next.Parent; 530if (token.Parent.IsKind(SyntaxKind.PositionalPatternClause)) 532posPattern = (PositionalPatternClauseSyntax)token.Parent; 534else if (next.Parent.IsKind(SyntaxKind.PositionalPatternClause)) 536posPattern = (PositionalPatternClauseSyntax)next.Parent; 593var listPattern = token.Parent as ListPatternSyntax ?? next.Parent as ListPatternSyntax; 616if (token.Parent == null || next.Parent == null) 621if (IsAccessorListWithoutAccessorsWithBlockBody(next.Parent) || 622IsAccessorListWithoutAccessorsWithBlockBody(next.Parent.Parent)) 641if ((token.Parent is AssignmentExpressionSyntax && AssignmentTokenNeedsSeparator(token.Kind())) || 642(next.Parent is AssignmentExpressionSyntax && AssignmentTokenNeedsSeparator(next.Kind())) || 643(token.Parent is BinaryExpressionSyntax && BinaryTokenNeedsSeparator(token.Kind())) || 644(next.Parent is BinaryExpressionSyntax && BinaryTokenNeedsSeparator(next.Kind()))) 649if (token.IsKind(SyntaxKind.GreaterThanToken) && token.Parent.IsKind(SyntaxKind.TypeArgumentList)) 658token.Parent.IsKind(SyntaxKind.FunctionPointerParameterList) && 659token.Parent.Parent?.Parent is not UsingDirectiveSyntax) 666!token.Parent.IsKind(SyntaxKind.EnumDeclaration)) 677if (next.IsKind(SyntaxKind.SwitchKeyword) && next.Parent is SwitchExpressionSyntax) 684if (token.Parent.IsKind(SyntaxKind.ConditionalExpression) || token.Parent is TypeSyntax) 686if (token.Parent.Parent?.Kind() is not SyntaxKind.TypeArgumentList and not SyntaxKind.UsingDirective) 695return !token.Parent.IsKind(SyntaxKind.InterpolationFormatClause) && 696!token.Parent.IsKind(SyntaxKind.XmlPrefix); 701if (next.Parent.IsKind(SyntaxKind.BaseList) || 702next.Parent.IsKind(SyntaxKind.TypeParameterConstraintClause) || 703next.Parent is ConstructorInitializerSyntax) 715if (token.IsKind(SyntaxKind.CloseParenToken) && IsWord(next.Kind()) && token.Parent.IsKind(SyntaxKind.TupleType) == true) 721&& (next.Parent.IsKind(SyntaxKind.ConditionalExpression))) 728return !token.Parent.IsKind(SyntaxKind.XmlTextAttribute); 733return !next.Parent.IsKind(SyntaxKind.XmlTextAttribute); 738if (token.Parent.IsKind(SyntaxKind.FunctionPointerType)) 747if (token.IsKind(SyntaxKind.AsteriskToken) && next.Parent.IsKind(SyntaxKind.FunctionPointerCallingConvention)) 759if (next.Parent.IsKind(SyntaxKind.FunctionPointerParameterList) && next.IsKind(SyntaxKind.LessThanToken)) 771case SyntaxKind.CloseBracketToken when token.Parent.IsKind(SyntaxKind.FunctionPointerUnmanagedCallingConventionList): 778if (token.Parent.IsKind(SyntaxKind.FunctionPointerCallingConvention) && next.Parent.IsKind(SyntaxKind.FunctionPointerUnmanagedCallingConventionList) && 785if (next.Parent.IsKind(SyntaxKind.FunctionPointerUnmanagedCallingConventionList) && token.Parent.IsKind(SyntaxKind.FunctionPointerUnmanagedCallingConventionList)) 818if (token.IsKind(SyntaxKind.LessThanToken) && token.Parent.IsKind(SyntaxKind.FunctionPointerParameterList)) 825if (next.IsKind(SyntaxKind.GreaterThanToken) && next.Parent.IsKind(SyntaxKind.FunctionPointerParameterList)) 842if (next.IsKind(SyntaxKind.AsteriskToken) && next.Parent is PointerTypeSyntax) 848if (token.IsKind(SyntaxKind.AsteriskToken) && token.Parent is PointerTypeSyntax && 849(next.IsKind(SyntaxKind.IdentifierToken) || next.Parent.IsKind(SyntaxKind.IndexerDeclaration))) 861if (IsSingleLineInitializerContext(token.Parent)) 863if (next.Parent is InitializerExpressionSyntax or AnonymousObjectCreationExpressionSyntax && 869if (token.Parent is InitializerExpressionSyntax or AnonymousObjectCreationExpressionSyntax && 875if (next.Parent is InitializerExpressionSyntax or AnonymousObjectCreationExpressionSyntax && 883if (next is { RawKind: (int)SyntaxKind.OpenParenToken, Parent.Parent: ParenthesizedLambdaExpressionSyntax lambda } && 896(!next.IsKind(SyntaxKind.OpenParenToken) || KeywordNeedsSeparatorBeforeOpenParen(token.Kind()) || next.Parent.IsKind(SyntaxKind.TupleType)) && 921if (token.Parent is RelationalPatternSyntax) 957switch (token.Parent.Kind(), next.Parent.Kind()) 1286return GetDeclarationDepth(token.Parent);
Microsoft.CodeAnalysis.CSharp.CodeStyle (213)
CSharpSmartTokenFormatter.cs (5)
74endToken.Parent.IsKind(SyntaxKind.Block) && 75(endToken.Parent.IsParentKind(SyntaxKind.TryStatement) || endToken.Parent.IsParentKind(SyntaxKind.DoStatement)); 96(token.Parent.IsInitializerForArrayOrCollectionCreationExpression() || 97token.Parent is AnonymousObjectCreationExpressionSyntax))
CSharpSyntaxFacts.cs (15)
103(token.Parent is PrefixUnaryExpressionSyntax || token.Parent is PostfixUnaryExpressionSyntax || token.Parent is OperatorDeclarationSyntax)) || 104(SyntaxFacts.IsBinaryExpression(kind) && (token.Parent is BinaryExpressionSyntax or OperatorDeclarationSyntax or RelationalPatternSyntax)) || 105(SyntaxFacts.IsAssignmentExpressionOperatorToken(kind) && token.Parent is AssignmentExpressionSyntax); 276=> token.Parent is ConstructorInitializerSyntax(SyntaxKind.ThisConstructorInitializer) constructorInit && 280=> token.Parent is ConstructorInitializerSyntax(SyntaxKind.BaseConstructorInitializer) constructorInit && 295return token.Parent is QueryClauseSyntax; 299return token.Parent is SelectOrGroupClauseSyntax; 302return token.Parent is OrderingSyntax; 304return token.Parent is (kind: SyntaxKind.JoinIntoClause or SyntaxKind.QueryContinuation); 525if (token.Kind() == SyntaxKind.CommaToken && token.Parent.IsKind(SyntaxKind.OrderByClause)) 706var node = root.FindToken(position).Parent; 984var node = token.Parent; 1411if (token.Kind() == SyntaxKind.OverrideKeyword && token.Parent is MemberDeclarationSyntax member)
CSharpTriviaFormatter.DocumentationCommentExteriorCommentRewriter.cs (1)
68var currentParent = trivia.Token.Parent;
CSharpVirtualCharService.cs (2)
37if (token.Parent?.Parent is InterpolatedStringExpressionSyntax { StringStartToken.RawKind: (int)SyntaxKind.InterpolatedMultiLineRawStringStartToken }) 55if (IsInDirective(token.Parent))
DirectiveSyntaxExtensions.cs (1)
30node = node.ParentTrivia.Token.Parent;
ElasticTriviaFormattingRule.cs (35)
104currentToken.Parent.IsKind(SyntaxKind.TypeParameterConstraintClause)) 106RoslynDebug.AssertNotNull(previousToken.Parent); 109if (previousToken.Parent.Ancestors().OfType<TypeParameterConstraintClauseSyntax>().Any()) 115var firstTokenAfterTypeConstraint = currentToken.Parent.GetLastToken().GetNextToken(); 116var lastTokenForTypeConstraint = currentToken.Parent.GetLastToken().GetNextToken(); 119firstTokenAfterTypeConstraint.Parent.IsKind(SyntaxKind.TypeParameterConstraintClause)) 131currentToken.Parent.IsParentKind(SyntaxKind.IfStatement)) 173if (previousToken.Parent is not FileScopedNamespaceDeclarationSyntax) 281if (previousToken.IsKind(SyntaxKind.CloseBracketToken) && previousToken.Parent is AttributeListSyntax 282&& !(currentToken.Parent is AttributeListSyntax)) 315return (((previousToken.Parent is StatementSyntax) && currentToken.Parent != previousToken.Parent) 321if (previousToken.Parent is AttributeListSyntax parent) 327if (!currentToken.IsKind(SyntaxKind.EndOfFileToken) && !(currentToken.Parent is AttributeListSyntax)) 346return previousToken.Parent is EnumDeclarationSyntax ? 1 : 0; 352if (previousToken.Parent is LabeledStatementSyntax or SwitchLabelSyntax) 360if ((currentToken.Kind() == SyntaxKind.FromKeyword && currentToken.Parent.IsKind(SyntaxKind.FromClause)) || 361(currentToken.Kind() == SyntaxKind.LetKeyword && currentToken.Parent.IsKind(SyntaxKind.LetClause)) || 362(currentToken.Kind() == SyntaxKind.WhereKeyword && currentToken.Parent.IsKind(SyntaxKind.WhereClause)) || 363(currentToken.Kind() == SyntaxKind.JoinKeyword && currentToken.Parent.IsKind(SyntaxKind.JoinClause)) || 364(currentToken.Kind() == SyntaxKind.JoinKeyword && currentToken.Parent.IsKind(SyntaxKind.JoinIntoClause)) || 365(currentToken.Kind() == SyntaxKind.OrderByKeyword && currentToken.Parent.IsKind(SyntaxKind.OrderByClause)) || 366(currentToken.Kind() == SyntaxKind.SelectKeyword && currentToken.Parent.IsKind(SyntaxKind.SelectClause)) || 367(currentToken.Kind() == SyntaxKind.GroupKeyword && currentToken.Parent.IsKind(SyntaxKind.GroupClause))) 383if (currentToken.Parent is AttributeListSyntax parent) 390if (previousToken.Parent is not AttributeListSyntax) 409return previousToken.Parent is TypeParameterListSyntax ? 1 : 0; 430nextToken.Parent.IsKind(SyntaxKind.DoStatement)) 446if (previousToken.Parent is ForStatementSyntax) 454else if (previousToken.Parent is UsingDirectiveSyntax) 456return currentToken.Parent is UsingDirectiveSyntax ? 1 : 2; 458else if (previousToken.Parent is ExternAliasDirectiveSyntax) 460return currentToken.Parent is ExternAliasDirectiveSyntax ? 1 : 2; 462else if (currentToken.Parent is LocalFunctionStatementSyntax)
FormattingHelpers.cs (46)
77=> token.IsOpenParenInParameterList() && token.Parent.IsParentKind(SyntaxKind.ConversionOperatorDeclaration); 80=> token.IsOpenParenInParameterList() && token.Parent.IsParentKind(SyntaxKind.OperatorDeclaration); 83=> token.Kind() == SyntaxKind.OpenParenToken && token.Parent.IsKind(SyntaxKind.ParameterList); 86=> token.Kind() == SyntaxKind.CloseParenToken && token.Parent.IsKind(SyntaxKind.ParameterList); 103if (token.Parent is (kind: SyntaxKind.ArgumentList or SyntaxKind.AttributeArgumentList)) 109if (token.Parent.IsKind(SyntaxKind.PositionalPatternClause) && token.Parent.Parent.IsKind(SyntaxKind.RecursivePattern)) 112return token.Parent.Parent.GetFirstToken() != token; 119=> token.Kind() == SyntaxKind.ColonToken && token.Parent.IsKind(SyntaxKind.BaseList); 122=> token.Kind() == SyntaxKind.CommaToken && (token.Parent.IsAnyArgumentList() || token.Parent.IsKind(SyntaxKind.ParameterList) || token.Parent.IsKind(SyntaxKind.FunctionPointerParameterList)); 125=> token.Kind() == SyntaxKind.OpenParenToken && token.Parent.IsKind(SyntaxKind.ParameterList) && token.Parent.Parent.IsKind(SyntaxKind.ParenthesizedLambdaExpression); 151token.Parent is ForStatementSyntax forStatement && 162if (token.Parent is not StatementSyntax statement || 178return token.Parent is ExpressionSyntax || token.Parent.IsKind(SyntaxKind.PropertyPatternClause); 188if (token.Parent is not BlockSyntax block || 210token.Parent.IsKind(SyntaxKind.EnumDeclaration); 216token.Parent.IsAnyArgumentList(); 221if (token.Parent is not ParenthesizedExpressionSyntax parenthesizedExpression) 231var parent = token.Parent ?? throw new ArgumentNullException(nameof(token)); 278token.Parent.IsKind(SyntaxKind.EqualsValueClause) && 279token.Parent.Parent.IsKind(SyntaxKind.PropertyDeclaration); 284if (token.Parent is not StatementSyntax statement) 305=> token.IsDotInMemberAccess() || (token.Kind() == SyntaxKind.DotToken && token.Parent.IsKind(SyntaxKind.QualifiedName)); 309if (token.Parent is not MemberAccessExpressionSyntax memberAccess) 321return token.Parent is (kind: SyntaxKind.TypeParameterList or SyntaxKind.TypeArgumentList); 329((token.Parent is InitializerExpressionSyntax) || 330(token.Parent is AnonymousObjectCreationExpressionSyntax)); 334=> token.Kind() == SyntaxKind.ColonToken && token.Parent is CasePatternSwitchLabelSyntax; 337=> token.Kind() == SyntaxKind.ColonToken && token.Parent.IsKind(SyntaxKind.SwitchExpressionArm); 340=> token.Kind() == SyntaxKind.CommaToken && token.Parent.IsKind(SyntaxKind.SwitchExpression); 343=> token.Kind() == SyntaxKind.CommaToken && token.Parent.IsKind(SyntaxKind.PropertyPatternClause); 348token.Parent is LabeledStatementSyntax labeledStatement && 358token.Parent is LabeledStatementSyntax labeledStatement && 376token.Parent is FromClauseSyntax fromClause && 383token.Parent?.Parent is QueryExpressionSyntax queryExpression && 476if (token.Parent == null) 481return token.Parent.Parent is LabeledStatementSyntax; 515return token.Parent is PrefixUnaryExpressionSyntax; 519=> currentToken.Parent.IsKind(SyntaxKind.Interpolation); 527currentToken.Parent is ParenthesizedVariableDesignationSyntax && 528currentToken.Parent.Parent is DeclarationExpressionSyntax; 537currentToken.Parent.IsKind(SyntaxKind.TupleExpression);
FormattingRangeHelper.cs (15)
42var (_, closeBrace) = previousToken.Parent.GetBracePair(); 90var parent = endToken.Parent; 114var parent = endToken.Parent; 171var parent = endToken.Parent; 271var parent = endToken.Parent; 338RoslynDebug.AssertNotNull(previousToken.Parent?.Parent); 339var labelNode = previousToken.Parent.Parent; 349(previousToken.Parent.IsKind(SyntaxKind.Block) || 350previousToken.Parent is TypeDeclarationSyntax || 351previousToken.Parent is NamespaceDeclarationSyntax); 410token.Parent is SwitchLabelSyntax switchLabel && 436RoslynDebug.AssertNotNull(token.Parent); 440if (token.Parent.Kind() is SyntaxKind.Block or 443return token.Parent.Parent as MemberDeclarationSyntax; 447return token.Parent.FirstAncestorOrSelf<MemberDeclarationSyntax>();
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxTreeExtensions.cs\SyntaxTreeExtensions.cs (1)
199if (token.Parent is XmlCrefAttributeSyntax attribute)
NewLineUserSettingFormattingRule.cs (23)
78RoslynDebug.AssertNotNull(currentToken.Parent); 85&& previousToken.Parent!.Parent == currentToken.Parent.Parent) 112if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent is BaseTypeDeclarationSyntax or NamespaceDeclarationSyntax) 121if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent.IsKind(SyntaxKind.AnonymousObjectCreationExpression)) 131currentToken.Parent.Kind() is 145var currentTokenParentParent = currentToken.Parent.Parent; 197if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent.IsKind(SyntaxKind.SwitchExpression)) 206if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && IsControlBlock(currentToken.Parent)) 219RoslynDebug.AssertNotNull(currentToken.Parent); 226if (previousToken.IsKind(SyntaxKind.CommaToken) && previousToken.Parent.IsKind(SyntaxKind.ObjectInitializerExpression)) 240if (previousToken.IsKind(SyntaxKind.CommaToken) && previousToken.Parent.IsKind(SyntaxKind.AnonymousObjectCreationExpression)) 257|| previousToken.Parent!.Parent != currentToken.Parent.Parent) 294if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent is BaseTypeDeclarationSyntax or NamespaceDeclarationSyntax) 307if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent.IsKind(SyntaxKind.AnonymousObjectCreationExpression)) 324currentToken.Parent.Kind() is SyntaxKind.ObjectInitializerExpression or SyntaxKind.CollectionInitializerExpression or SyntaxKind.WithInitializerExpression or SyntaxKind.PropertyPatternClause) 341currentToken.Parent.Kind() is SyntaxKind.ArrayInitializerExpression or SyntaxKind.ImplicitArrayCreationExpression) 346var currentTokenParentParent = currentToken.Parent.Parent; 419if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent.IsKind(SyntaxKind.SwitchExpression)) 432if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && IsControlBlock(currentToken.Parent)) 448&& (previousToken.Parent is StatementSyntax && !previousToken.Parent.IsKind(SyntaxKind.ForStatement))
SemanticModelExtensions.cs (3)
27if (name.Parent is ExpressionSyntax expression) 44if (name.Parent is ExpressionSyntax expression) 135switch (token.Parent)
SpacingFormattingRule.cs (29)
47RoslynDebug.Assert(previousToken.Parent != null && currentToken.Parent != null); 51var previousParentKind = previousToken.Parent.Kind(); 52var currentParentKind = currentToken.Parent.Kind(); 94if (previousToken.Parent.IsKind(SyntaxKind.OperatorDeclaration) && currentToken.IsOpenParenInParameterListOfAOperationDeclaration()) 165if ((previousToken.Parent.Kind() is SyntaxKind.ParenthesizedExpression or SyntaxKind.ParenthesizedPattern && previousKind == SyntaxKind.OpenParenToken) || 166(currentToken.Parent.Kind() is SyntaxKind.ParenthesizedExpression or SyntaxKind.ParenthesizedPattern && currentKind == SyntaxKind.CloseParenToken)) 180&& IsEmptyForStatement((ForStatementSyntax)previousToken.Parent!)) 210if (currentKind == SyntaxKind.OpenBracketToken && currentToken.Parent.IsKind(SyntaxKind.ListPattern)) 251if (previousKind == SyntaxKind.CloseBracketToken && previousToken.Parent.IsKind(SyntaxKind.AttributeList)) 255currentToken.Parent.IsKind(SyntaxKind.AttributeList)) 327if (currentToken.Parent is BinaryExpressionSyntax || 328previousToken.Parent is BinaryExpressionSyntax || 329currentToken.Parent is AssignmentExpressionSyntax || 330previousToken.Parent is AssignmentExpressionSyntax || 331currentToken.Parent.Kind() is SyntaxKind.AndPattern or SyntaxKind.OrPattern or SyntaxKind.RelationalPattern || 332previousToken.Parent.Kind() is SyntaxKind.AndPattern or SyntaxKind.OrPattern or SyntaxKind.RelationalPattern) 458if (previousToken.Parent.IsKind(SyntaxKind.NotPattern)) 487if ((currentKind == SyntaxKind.OpenBraceToken && currentToken.Parent is InterpolationSyntax) || 488(previousKind == SyntaxKind.CloseBraceToken && previousToken.Parent is InterpolationSyntax)) 494if (previousKind == SyntaxKind.OpenBraceToken && previousToken.Parent is InterpolationSyntax) 500if (currentKind == SyntaxKind.CloseBraceToken && currentToken.Parent is InterpolationSyntax interpolation) 511if ((previousKind == SyntaxKind.CommaToken && previousToken.Parent is InterpolationAlignmentClauseSyntax) || 512(currentKind == SyntaxKind.CommaToken && currentToken.Parent is InterpolationAlignmentClauseSyntax)) 518if ((previousKind == SyntaxKind.ColonToken && previousToken.Parent is InterpolationFormatClauseSyntax) || 519(currentKind == SyntaxKind.ColonToken && currentToken.Parent is InterpolationFormatClauseSyntax)) 539var rangeExpression = (RangeExpressionSyntax)previousToken.Parent!; 550var rangeExpression = (RangeExpressionSyntax)currentToken.Parent!; 603=> token.Parent is (kind: SyntaxKind.ArrayRankSpecifier or SyntaxKind.BracketedArgumentList or SyntaxKind.BracketedParameterList or SyntaxKind.ImplicitArrayCreationExpression or SyntaxKind.ListPattern);
StructuredTriviaFormattingRule.cs (4)
16if (previousToken.Parent is StructuredTriviaSyntax || currentToken.Parent is StructuredTriviaSyntax) 26if (previousToken.Parent is StructuredTriviaSyntax || currentToken.Parent is StructuredTriviaSyntax)
SyntaxNodeExtensions.cs (2)
1051{ Parent: NameEqualsSyntax { Parent: UsingDirectiveSyntax _ } } => true, 1052{ Parent: IdentifierNameSyntax { Parent: UsingDirectiveSyntax _ } } => true,
SyntaxTokenExtensions.cs (2)
47token.Parent.IsKind(SyntaxKind.ObjectInitializerExpression); 51=> token.IsKind(SyntaxKind.OpenBraceToken) && token.Parent.IsKind(SyntaxKind.AccessorList);
TokenBasedFormattingRule.cs (29)
168if (previousToken.Kind() == SyntaxKind.CloseParenToken && previousToken.Parent.IsEmbeddedStatementOwnerWithCloseParen()) 173if (previousToken.Kind() == SyntaxKind.DoKeyword && previousToken.Parent.IsKind(SyntaxKind.DoStatement)) 199if (previousToken.Kind() == SyntaxKind.CloseBracketToken && previousToken.Parent is AttributeListSyntax) 201var attributeOwner = previousToken.Parent?.Parent; 220if (previousToken.Parent is not UsingDirectiveSyntax previousUsing) 227currentToken.Parent is UsingDirectiveSyntax currentUsing && 267if (previousToken.Kind() == SyntaxKind.CloseParenToken && previousToken.Parent.IsEmbeddedStatementOwnerWithCloseParen()) 286previousToken.Parent.IsKind(SyntaxKind.AttributeList) && 287previousToken.Parent.IsParentKind(SyntaxKind.Parameter)) 315var spaces = previousToken.Parent is (kind: 344if (previousToken.Kind() == SyntaxKind.CommaToken && currentToken.Kind() == SyntaxKind.OpenBracketToken && currentToken.Parent is AttributeListSyntax) 350if (previousToken.Kind() == SyntaxKind.CloseBracketToken && previousToken.Parent is AttributeListSyntax) 373!currentToken.Parent.IsKind(SyntaxKind.AttributeList) && 393if (currentToken.Parent is (kind: 407if (previousToken.Parent is CastExpressionSyntax && 414if (previousToken.Parent is (kind: SyntaxKind.TypeArgumentList or SyntaxKind.TypeParameterList or SyntaxKind.FunctionPointerType)) 431currentToken.Parent is (kind: SyntaxKind.TypeArgumentList or SyntaxKind.TypeParameterList)) 438previousToken.Parent is PrefixUnaryExpressionSyntax) 445currentToken.Parent is PostfixUnaryExpressionSyntax) 451if (currentToken.IsKind(SyntaxKind.QuestionToken) && currentToken.Parent.IsKind(SyntaxKind.ConditionalAccessExpression)) 458currentToken.Parent is (kind: SyntaxKind.NullableType or SyntaxKind.ClassConstraint)) 465previousToken.Parent?.IsParentKind(SyntaxKind.ArrayType) == true) 472currentToken.Parent.IsKind(SyntaxKind.SuppressNullableWarningExpression)) 478if (currentToken.Kind() == SyntaxKind.AsteriskToken && currentToken.Parent is PointerTypeSyntax) 484if (previousToken.Kind() == SyntaxKind.AsteriskToken && previousToken.Parent is PrefixUnaryExpressionSyntax) 519&& !previousToken.Parent.IsKind(SyntaxKind.SuppressNullableWarningExpression)) 525if (previousToken.Kind() == SyntaxKind.TildeToken && (previousToken.Parent is PrefixUnaryExpressionSyntax || previousToken.Parent is DestructorDeclarationSyntax)) 532previousToken.Parent is PrefixUnaryExpressionSyntax)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (258)
CSharpCodeGenerationHelpers.cs (1)
203return contextTree?.GetRoot(cancellationToken).FindToken(contextLocation!.SourceSpan.Start).Parent;
CSharpCodeGenerationService.cs (1)
540var block = token.Parent.GetAncestorsOrThis<BlockSyntax>().FirstOrDefault();
CSharpIndentationService.Indenter.cs (14)
124|| token is { RawKind: (int)SyntaxKind.CloseBraceToken, Parent: InterpolationSyntax }) 180(token.IsKind(SyntaxKind.CloseBraceToken) && token.Parent.IsKind(SyntaxKind.Interpolation))) 187if (token.Parent is LabeledStatementSyntax || token.IsLastTokenInLabelStatement()) 224token.Parent != null && 225(token.Parent.Parent is StatementSyntax || token.Parent.Parent is ElseClauseSyntax)); 227var embeddedStatementOwner = token.Parent.Parent; 252if (token.Parent.IsKind(SyntaxKind.AccessorList) && 253token.Parent.Parent.IsKind(SyntaxKind.PropertyDeclaration)) 271var nonTerminalNode = token.Parent; 284var nonTerminalNode = token.Parent; 308if (token.Parent.IsKind(SyntaxKind.ArgumentList)) 310return GetDefaultIndentationFromToken(indenter, token.Parent.GetFirstToken(includeZeroWidth: true)); 324=> token.Parent switch
CSharpReplaceDefaultLiteralCodeFixProvider.cs (1)
50token.Parent is LiteralExpressionSyntax(SyntaxKind.DefaultLiteralExpression) defaultLiteral)
CSharpSyntaxContext.cs (9)
228targetToken.Parent.IsKind(SyntaxKind.DestructorDeclaration) && 229targetToken.Parent.Parent is (kind: SyntaxKind.ClassDeclaration or SyntaxKind.RecordDeclaration); 238var isOnArgumentListBracketOrComma = targetToken.Parent is (kind: SyntaxKind.ArgumentList or SyntaxKind.AttributeArgumentList or SyntaxKind.ArrayRankSpecifier); 325token.Parent.IsKind(SyntaxKind.AttributeList) && 364token.Parent.IsKind(SyntaxKind.AttributeList)) 366if (token.Parent.Parent is ParameterSyntax { Parent: ParameterListSyntax { Parent: RecordDeclarationSyntax } }) 386token.Parent.IsKind(SyntaxKind.AttributeList) && 387token.Parent.Parent is StatementSyntax) 484return targetToken.Parent switch
CSharpTypeInferenceService.TypeInferrer.cs (1)
198var parent = token.Parent;
CSharpUseDeconstructionCodeFixProvider.cs (1)
46var nodesToProcess = diagnostics.SelectAsArray(d => d.Location.FindToken(cancellationToken).Parent);
ITypeSymbolExtensions.cs (1)
144var namespaceUsings = root.FindToken(position).Parent!.GetAncestors<BaseNamespaceDeclarationSyntax>().SelectMany(n => n.Usings);
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTokenExtensions.cs\SyntaxTokenExtensions.cs (51)
112case SyntaxKind.OpenBraceToken when token.Parent.IsKind(SyntaxKind.Block): 121if (token.Parent.IsKind(SyntaxKind.Block)) 123if (token.Parent.Parent is StatementSyntax) 132if (!token.Parent.IsParentKind(SyntaxKind.TryStatement) && 133!token.Parent.IsParentKind(SyntaxKind.DoStatement)) 139token.Parent.IsParentKind(SyntaxKind.ElseClause) || 140token.Parent.IsParentKind(SyntaxKind.FinallyClause) || 141token.Parent.IsParentKind(SyntaxKind.CatchClause) || 142token.Parent.IsParentKind(SyntaxKind.SwitchSection)) 148if (token.Parent.IsKind(SyntaxKind.SwitchStatement)) 156return token.Parent is (kind: SyntaxKind.CaseSwitchLabel or SyntaxKind.DefaultSwitchLabel or SyntaxKind.CasePatternSwitchLabel or SyntaxKind.LabeledStatement); 158case SyntaxKind.DoKeyword when token.Parent.IsKind(SyntaxKind.DoStatement): 162var parent = token.Parent; 173return token.Parent.IsKind(SyntaxKind.ElseClause); 176if (token.Parent.IsKind(SyntaxKind.AttributeList)) 179var container = token.Parent.Parent; 224if (token.Parent is FileScopedNamespaceDeclarationSyntax namespaceDeclaration && namespaceDeclaration.SemicolonToken == token) 258if (token.Parent.IsKind(SyntaxKind.AttributeList)) 260var container = token.Parent.Parent; 273if (token.Parent.IsKind(SyntaxKind.CastExpression)) 278if (token.Parent is ParenthesizedExpressionSyntax parenExpr) 333targetToken.Parent.IsKind(SyntaxKind.ParenthesizedExpression)) 339if (targetToken.Parent is PrefixUnaryExpressionSyntax prefix) 346if (targetToken.Parent is BinaryExpressionSyntax binary) 395targetToken.Parent.IsKind(SyntaxKind.SwitchStatement)) 402if (targetToken.Parent is (kind: SyntaxKind.CaseSwitchLabel or SyntaxKind.DefaultSwitchLabel or SyntaxKind.CasePatternSwitchLabel)) 430targetToken.Parent is (kind: SyntaxKind.CrefBracketedParameterList or SyntaxKind.CrefParameterList); 449targetToken.Parent.IsKind(SyntaxKind.NameColon) && 450targetToken.Parent.Parent.IsKind(SyntaxKind.Argument) && 451targetToken.Parent.Parent.Parent.IsKind(SyntaxKind.ArgumentList)) 453var owner = targetToken.Parent.Parent.Parent.Parent; 466if (targetToken.Parent.IsKind(SyntaxKind.ArgumentList)) 468if (targetToken.Parent.IsParentKind(SyntaxKind.ObjectCreationExpression) || 469targetToken.Parent.IsParentKind(SyntaxKind.BaseConstructorInitializer) || 470targetToken.Parent.IsParentKind(SyntaxKind.ThisConstructorInitializer)) 478if (targetToken.Parent.IsParentKind(SyntaxKind.InvocationExpression) && !targetToken.IsInvocationOfVarExpression()) 578targetToken.Parent.IsKind(SyntaxKind.AccessorList)) 586targetToken.Parent.IsKind(SyntaxKind.Block) && 587targetToken.Parent.Parent is AccessorDeclarationSyntax) 594targetToken.Parent is AccessorDeclarationSyntax) 601targetToken.Parent.IsKind(SyntaxKind.AttributeList) && 602targetToken.Parent.Parent is AccessorDeclarationSyntax) 634IsGenericInterfaceOrDelegateTypeParameterList(targetToken.Parent!)) 640IsGenericInterfaceOrDelegateTypeParameterList(targetToken.Parent!)) 646targetToken.Parent.IsKind(SyntaxKind.AttributeList) && 647targetToken.Parent.Parent.IsKind(SyntaxKind.TypeParameter) && 648IsGenericInterfaceOrDelegateTypeParameterList(targetToken.Parent.Parent.Parent)) 658if (token.Kind() == SyntaxKind.CommaToken && token.Parent is BaseArgumentListSyntax) 660var argumentList = (BaseArgumentListSyntax)token.Parent; 684if (token.Parent is not MemberAccessExpressionSyntax memberAccessExpression) 694=> token.Parent is IdentifierNameSyntax typedParent &&
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTreeExtensions.cs\SyntaxTreeExtensions.cs (175)
36token.Parent.IsKind(SyntaxKind.AttributeList)) 44token.Parent.IsKind(SyntaxKind.AttributeList)) 52token.Parent.IsKind(SyntaxKind.AttributeTargetSpecifier)) 59if (token.Parent.IsKind(SyntaxKind.QualifiedName) && 60token.Parent.IsParentKind(SyntaxKind.Attribute)) 67if (token.Parent.IsKind(SyntaxKind.AliasQualifiedName) && 68token.Parent.IsParentKind(SyntaxKind.Attribute)) 89var parent = token.Parent; 167if (token.Parent is BaseTypeDeclarationSyntax) 178if (token.Parent is MemberDeclarationSyntax && 179token.Parent.Parent is BaseTypeDeclarationSyntax) 195if (token.Parent is BaseTypeDeclarationSyntax && 196token.Parent.Parent is BaseTypeDeclarationSyntax) 201else if (token.Parent is AccessorListSyntax) 207token.Parent.IsKind(SyntaxKind.Block) && 208token.Parent.Parent is MemberDeclarationSyntax) 220token.Parent.IsKind(SyntaxKind.AttributeList)) 228var container = token.Parent.Parent?.Parent; 297var member = token.Parent; 358if (token.Kind() == SyntaxKind.CloseBracketToken && token.Parent is AttributeListSyntax) 359return syntaxTree.IsLocalFunctionDeclarationContext(token.Parent.SpanStart, validModifiers, cancellationToken); 439if (token.IsKind(SyntaxKind.OpenBraceToken) && token.Parent is NamespaceDeclarationSyntax or TypeDeclarationSyntax) 456if (token.Parent is (kind: SyntaxKind.ExternAliasDirective or SyntaxKind.UsingDirective)) 460else if (token.Parent is MemberDeclarationSyntax) 478if (token.Parent is BaseTypeDeclarationSyntax) 482else if (token.Parent.IsKind(SyntaxKind.NamespaceDeclaration)) 486else if (token.Parent is AccessorListSyntax) 491token.Parent.IsKind(SyntaxKind.Block) && 492token.Parent.Parent is MemberDeclarationSyntax) 507token.Parent.IsKind(SyntaxKind.AttributeList)) 510if (token.Parent.IsParentKind(SyntaxKind.CompilationUnit)) 519var container = token.Parent?.Parent?.Parent; 596var container = token.Parent?.Parent; 778if (token.Parent is BaseListSyntax { Parent: not EnumDeclarationSyntax }) 824token.Parent.IsKind(SyntaxKind.TypeParameterConstraintClause)) 831token.Parent.IsKind(SyntaxKind.IdentifierName) && 832token.Parent.IsParentKind(SyntaxKind.SimpleBaseType) && 833token.Parent.Parent.IsParentKind(SyntaxKind.BaseList)) 877token.Parent is TypeParameterConstraintClauseSyntax constraintClause) 895if (token.IsKind(SyntaxKind.OpenParenToken) && token.Parent.IsKind(SyntaxKind.TypeOfExpression)) 907if (token.IsKind(SyntaxKind.OpenParenToken) && token.Parent.IsKind(SyntaxKind.DefaultExpression)) 920if (token.IsKind(SyntaxKind.OpenParenToken) && token.Parent.IsKind(SyntaxKind.SizeOfExpression)) 941return token.Parent.IsKind(SyntaxKind.FunctionPointerParameterList); 947{ Parent.RawKind: (int)SyntaxKind.FunctionPointerParameter } => true, 949{ Parent: TypeSyntax { Parent.RawKind: (int)SyntaxKind.FunctionPointerParameter } } => true, 955=> targetToken.Parent.IsKind(SyntaxKind.TypeParameterConstraintClause) && 977if (token.Parent is TypeArgumentListSyntax) 988if (nameToken.Parent is not NameSyntax name) 1049token.Parent.IsDelegateOrConstructorOrLocalFunctionOrMethodOrOperatorParameterList(includeOperators)) 1055if (token.IsKind(SyntaxKind.LessThanToken) && token.Parent.IsKind(SyntaxKind.FunctionPointerParameterList)) 1062token.Parent is ParameterListSyntax parameterList && 1072token.Parent is FunctionPointerParameterListSyntax funcPtrParamList) 1081token.Parent.IsKind(SyntaxKind.AttributeList) && 1082token.Parent.Parent is ParameterSyntax parameter2 && 1093parameter3 = token.Parent as ParameterSyntax; 1096else if (token.IsKind(SyntaxKind.IdentifierToken) && token.Text == "scoped" && token.Parent is IdentifierNameSyntax scopedIdentifierName) 1134return token.Parent.IsKind(SyntaxKind.BracketedParameterList); 1147token.Parent.IsKind(SyntaxKind.DelegateDeclaration)) 1188if (token.Parent is (kind: SyntaxKind.ParameterList or SyntaxKind.BracketedParameterList)) 1199var method = tokenOnLeftOfPosition.Parent.GetAncestorOrThis<MethodDeclarationSyntax>(); 1216if (token.Parent.IsKind(SyntaxKind.ParameterList) && 1217token.Parent.IsParentKind(SyntaxKind.ParenthesizedLambdaExpression)) 1233if (token.Parent is (kind: SyntaxKind.ParenthesizedExpression or SyntaxKind.TupleExpression or SyntaxKind.CastExpression)) 1249parent = token.Parent; 1251else if (token.IsKind(SyntaxKind.ScopedKeyword) && token.Parent.IsKind(SyntaxKind.Parameter)) 1253parent = token.Parent.Parent; 1255else if (token.IsKind(SyntaxKind.IdentifierToken) && token.Text == "scoped" && token.Parent is IdentifierNameSyntax scopedIdentifierName && scopedIdentifierName.Parent.IsKind(SyntaxKind.Parameter)) 1308if (leftToken.Parent is (kind: 1313var possibleCommaOrParen = FindTokenOnLeftOfNode(leftToken.Parent); 1325var possibleCommaOrParen = FindTokenOnLeftOfNode(leftToken.Parent!); 1335leftToken.Parent.IsKind(SyntaxKind.IdentifierName) && 1336leftToken.Parent.Parent is (kind: SyntaxKind.QualifiedName or SyntaxKind.SimpleMemberAccessExpression)) 1338var possibleCommaOrParen = FindTokenOnLeftOfNode(leftToken.Parent.Parent); 1354if (leftToken.Parent is ParenthesizedExpressionSyntax parenthesizedExpression) 1362if (leftToken.Parent.IsKind(SyntaxKind.ParenthesizedPattern)) 1377if (leftToken.Kind() is SyntaxKind.OpenBraceToken or SyntaxKind.CommaToken && leftToken.Parent.IsKind(SyntaxKind.SwitchExpression)) 1384if (leftToken.Kind() is SyntaxKind.OpenParenToken or SyntaxKind.CommaToken && leftToken.Parent.IsKind(SyntaxKind.PositionalPatternClause)) 1391if (leftToken.Kind() is SyntaxKind.OpenBracketToken or SyntaxKind.CommaToken && leftToken.Parent.IsKind(SyntaxKind.ListPattern)) 1398if (leftToken.IsKind(SyntaxKind.DotDotToken) && leftToken.Parent.IsKind(SyntaxKind.SlicePattern)) 1406if (leftToken.IsKind(SyntaxKind.ColonToken) && leftToken.Parent is (kind: SyntaxKind.NameColon or SyntaxKind.ExpressionColon) && 1407leftToken.Parent.IsParentKind(SyntaxKind.Subpattern)) 1419return leftToken.Parent is BinaryPatternSyntax || 1420leftToken.Parent is SingleVariableDesignationSyntax { Parent: DeclarationPatternSyntax }; 1424if (leftToken.IsKind(SyntaxKind.NotKeyword) && leftToken.Parent.IsKind(SyntaxKind.NotPattern)) 1434leftToken.Parent.IsKind(SyntaxKind.RelationalPattern)) 1480if (lastTokenInPattern.Parent is SingleVariableDesignationSyntax variableDesignationSyntax && 1481originalLeftToken.Parent == variableDesignationSyntax) 1527SyntaxNode? node = leftToken.Parent as ExpressionSyntax; 1557if (possibleCommaOrParen.Parent is (kind: 1567if (possibleCommaOrParen.Parent.IsKind(SyntaxKind.ParameterList) && 1568possibleCommaOrParen.Parent?.Parent is ParenthesizedLambdaExpressionSyntax parenthesizedLambda) 1592if (leftToken.Parent.IsKind(SyntaxKind.ParenthesizedVariableDesignation) || 1593leftToken.Parent.IsParentKind(SyntaxKind.ParenthesizedVariableDesignation)) 1613if (leftToken.IsKind(SyntaxKind.OpenParenToken) && leftToken.Parent.IsKind(SyntaxKind.ParenthesizedExpression)) 1615if (IsPossibleVarDeconstructionOpenParenOrComma(FindTokenOnLeftOfNode(leftToken.Parent))) 1623if (leftToken.Kind() is SyntaxKind.OpenParenToken or SyntaxKind.CommaToken && leftToken.Parent.IsKind(SyntaxKind.TupleExpression)) 1625if (IsPossibleVarDeconstructionOpenParenOrComma(FindTokenOnLeftOfNode(leftToken.Parent))) 1635var outer = UnwrapPossibleTuple(leftToken.Parent!); 1676leftToken.Parent.IsKind(SyntaxKind.ArgumentList) && 1677leftToken.Parent?.Parent is InvocationExpressionSyntax invocation) 1770token.Parent.IsKind(SyntaxKind.LocalDeclarationStatement)) 1781var parent = token.Parent; 1802token.Parent is ArgumentSyntax argument && 1827token.Parent is LocalDeclarationStatementSyntax) 1853if (token.IsKind(SyntaxKind.IdentifierToken) && token.Text == "scoped" && token.Parent.IsKind(SyntaxKind.IdentifierName) && token.Parent.Parent is VariableDeclarationSyntax or ExpressionStatementSyntax or IncompleteMemberSyntax) 1859if (token.IsKind(SyntaxKind.ScopedKeyword) && token.Parent is IncompleteMemberSyntax) 2040token.Parent.IsKind(SyntaxKind.CastExpression)) 2060token.Parent.IsKind(SyntaxKind.GotoCaseStatement)) 2066token.Parent is EqualsValueClauseSyntax equalsValue) 2101if (token.Parent.IsKind(SyntaxKind.AttributeArgumentList) && 2110token.Parent.IsKind(SyntaxKind.NameColon) && 2111token.Parent.IsParentKind(SyntaxKind.AttributeArgument)) 2118token.Parent.IsKind(SyntaxKind.NameEquals) && 2119token.Parent.IsParentKind(SyntaxKind.AttributeArgument)) 2199if (token.Parent.IsKind(SyntaxKind.NameEquals) && 2200token.Parent.IsParentKind(SyntaxKind.UsingDirective)) 2240if (token.Parent.IsKind(SyntaxKind.ParenthesizedExpression)) 2249if (token.Parent is CastExpressionSyntax castExpression && 2260if (token.Parent is PrefixUnaryExpressionSyntax prefix) 2273if (token.Parent is AwaitExpressionSyntax awaitExpression) 2297if (token.Parent is BinaryExpressionSyntax binary) 2336if (previousToken.Parent.IsKind(SyntaxKind.PointerType) || 2337previousToken.Parent.IsKind(SyntaxKind.NullableType)) 2339var type = previousToken.Parent as TypeSyntax; 2363if (token.Parent.IsKind(SyntaxKind.ArrayRankSpecifier)) 2372token.Parent.IsKind(SyntaxKind.RangeExpression) && 2380token.Parent is ConditionalExpressionSyntax conditionalExpression) 2389token.Parent.IsKind(SyntaxKind.ConditionalExpression)) 2399if (token.Parent is (kind: SyntaxKind.TypeOfExpression or SyntaxKind.DefaultExpression or SyntaxKind.SizeOfExpression)) 2423if (token.Parent is (kind: SyntaxKind.ArgumentList or SyntaxKind.BracketedArgumentList or SyntaxKind.TupleExpression)) 2436if (token.Parent.IsKind(SyntaxKind.AttributeArgumentList)) 2451if (token.Parent.IsKind(SyntaxKind.Argument)) 2455else if (token.Parent.IsKind(SyntaxKind.RefExpression)) 2459if (token.Parent.IsParentKind(SyntaxKind.ParenthesizedExpression)) 2470token.Parent.IsKind(SyntaxKind.NameColon) && 2471token.Parent.IsParentKind(SyntaxKind.Argument)) 2487if (token.Parent is InitializerExpressionSyntax) 2491if (token.Parent.IsKind(SyntaxKind.ObjectInitializerExpression) && token.IsKind(SyntaxKind.OpenBraceToken)) 2506token.Parent?.Parent is ObjectCreationExpressionSyntax objectCreation) 2522token.Parent is ForStatementSyntax forStatement) 2533token.Parent is ForStatementSyntax forStatement2 && 2542token.Parent.IsKind(SyntaxKind.ForStatement)) 2553if (token.Parent is (kind: 2568if (token.Parent.IsKind(SyntaxKind.JoinClause)) 2576token.Parent.IsKind(SyntaxKind.WhereClause)) 2586if (token.Parent.IsKind(SyntaxKind.OrderByClause)) 2594token.Parent.IsKind(SyntaxKind.SelectClause)) 2604if (token.Parent.IsKind(SyntaxKind.GroupClause)) 2638if (token.IsKind(SyntaxKind.OpenParenToken) && token.Parent.IsKind(SyntaxKind.UsingStatement)) 2686if (token.IsKind(SyntaxKind.WhenKeyword) && token.Parent.IsKind(SyntaxKind.WhenClause)) 2705if (token.Parent.IsKind(SyntaxKind.AnonymousObjectCreationExpression)) 2715token.Parent.IsKind(SyntaxKind.ListPattern)) 2728return token.Parent is InterpolationSyntax interpolation 2736=> token.Parent?.Parent is InvocationExpressionSyntax invocation && 2750if (token.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression)) 2752var parentMemberAccess = token.Parent; 2766if (token.Parent.IsKind(SyntaxKind.QualifiedName)) 2768var parentQualifiedName = token.Parent; 2785if (token.Parent.IsKind(SyntaxKind.ArgumentList) && 2786token.Parent.Parent is InvocationExpressionSyntax invocationExpression && 2863token.Parent.IsKind(SyntaxKind.IdentifierName) && 2864token.Parent.Parent is (kind: SyntaxKind.ObjectInitializerExpression or SyntaxKind.CollectionInitializerExpression)) 2871token.Parent.IsKind(SyntaxKind.IdentifierName)) 2873if (token.Parent.Parent is ArgumentSyntax { RefOrOutKeyword.RawKind: (int)SyntaxKind.OutKeyword }) 2980token.Parent.IsKind(SyntaxKind.CatchDeclaration)) 2999token.Parent.IsKind(SyntaxKind.BaseList) && 3000token.Parent.IsParentKind(SyntaxKind.EnumDeclaration); 3015if (token.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression)) 3017var memberAccess = (MemberAccessExpressionSyntax)token.Parent; 3020else if (token.Parent is QualifiedNameSyntax qualifiedName && 3021token.Parent?.Parent is BinaryExpressionSyntax(SyntaxKind.IsExpression) binaryExpression && 3027else if (token.Parent is QualifiedNameSyntax qualifiedName1 && 3028token.Parent?.Parent is DeclarationPatternSyntax declarationExpression && 3061targetToken.Parent is FunctionPointerTypeSyntax functionPointerType &&
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\SyntaxTreeExtensions.cs\SyntaxTreeExtensions.cs (1)
172return token.Parent is GenericNameSyntax genericName && genericName.TypeArgumentList != null &&
MultiLineConditionalExpressionFormattingRule.cs (1)
39return token.Parent.HasAnnotation(SpecializedFormattingAnnotation);
UseExplicitTypeCodeFixProvider.cs (1)
128varDecl.Variables.Single().Identifier.Parent!,
Microsoft.CodeAnalysis.CSharp.EditorFeatures (17)
AutomaticCompletion\AutomaticLineEnderCommandHandler.cs (1)
94&& endToken.Parent.IsKind(SyntaxKind.Block)
AutomaticCompletion\AutomaticLineEnderCommandHandler_Helpers.cs (3)
382&& nextToken.Parent != null 383&& nextToken.Parent.Contains(baseObjectCreationExpressionNode)) 385var objectCreationNodeContainer = nextToken.Parent;
DecompiledSource\CSharpDecompiledSourceFormattingRule.cs (4)
36if (previousToken.Parent == null || currentToken.Parent == null) 39var previousStatement = previousToken.Parent.FirstAncestorOrSelf<StatementSyntax>(); 40var nextStatement = currentToken.Parent.FirstAncestorOrSelf<StatementSyntax>();
DocumentationComments\XmlTagCompletionCommandHandler.cs (4)
43if (token.Parent is not XmlElementStartTagSyntax parentStartTag) 72if (token.Parent.IsKind(SyntaxKind.XmlElementEndTag) && 73token.Parent?.Parent is XmlElementSyntax parentElement && 86while (token.Parent.IsKind(SyntaxKind.XmlText))
EventHookup\EventHookupSessionManager_EventHookupSession.cs (4)
187new DeclarationModifiers(isStatic: plusEqualsToken.Value.Parent.IsInStaticContext()), 209if (!token.Parent.IsKind(SyntaxKind.AddAssignmentExpression)) 220if (plusEqualsToken.Parent is not AssignmentExpressionSyntax parentToken) 259var parentToken = plusEqualsToken.Parent as AssignmentExpressionSyntax;
StringCopyPaste\StringCopyPasteHelpers.cs (1)
247var node = root.FindToken(position).Parent;
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (3)
EditAndContinue\BreakpointSpansTests.cs (1)
76var declarationNode = root.FindToken(position).Parent.FirstAncestorOrSelf<TDeclaration>();
EditAndContinue\CSharpEditAndContinueAnalyzerTests.cs (1)
58var node = token.Parent;
TypeInferrer\TypeInferrerTests.cs (1)
71var currentNode = token.Parent;
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (2)
Attributes\AttributeTests.cs (1)
5422var m = (ExpressionSyntax)cm.SyntaxTrees[0].GetCompilationUnitRoot().FindToken(index).Parent.Parent;
FlowAnalysis\RegionAnalysisTests.cs (1)
4428var node = tok.Parent as StatementSyntax;
Microsoft.CodeAnalysis.CSharp.Features (253)
BraceCompletion\BracketBraceCompletionService.cs (1)
57if (currentToken.IsKind(SyntaxKind.OpenBracketToken) && currentToken.Parent.IsKind(SyntaxKind.ListPattern))
BraceCompletion\CurlyBraceCompletionService.cs (8)
56=> token.IsKind(SyntaxKind.OpenBraceToken) && !token.Parent.IsKind(SyntaxKind.Interpolation); 73(startToken.Parent?.IsInitializerForArrayOrCollectionCreationExpression() == true || 74startToken.Parent is AnonymousObjectCreationExpressionSyntax)) 145if (currentToken.Parent is (kind: 156var currentTokenParentParent = currentToken.Parent?.Parent; 171if (currentToken.Parent.IsKind(SyntaxKind.AnonymousObjectCreationExpression)) 177if (IsControlBlock(currentToken.Parent)) 197if (currentToken.Parent is BaseTypeDeclarationSyntax or NamespaceDeclarationSyntax)
BraceCompletion\InterpolationBraceCompletionService.cs (3)
47=> token.IsKind(SyntaxKind.OpenBraceToken) && token.Parent.IsKind(SyntaxKind.Interpolation); 72return token.Parent.IsKind(SyntaxKind.InterpolatedStringExpression) || token.Parent.IsParentKind(SyntaxKind.InterpolatedStringExpression);
BraceCompletion\LessAndGreaterThanBraceCompletionService.cs (2)
54if (token.Parent is not BinaryExpressionSyntax(SyntaxKind.LessThanExpression) node || node.OperatorToken != token) 64if (previousToken.Parent is not IdentifierNameSyntax identifier)
BraceCompletion\ParenthesisBraceCompletionService.cs (2)
42|| token.Parent == null) 48var (openParen, closeParen) = token.Parent.GetParentheses();
BraceMatching\StringLiteralBraceMatcher.cs (2)
45if (token.Parent is InterpolatedStringExpressionSyntax interpolatedString) 52if (token.Parent is InterpolatedStringExpressionSyntax interpolatedString)
ChangeSignature\ChangeSignatureFormattingRule.cs (1)
52if (previousToken.Kind() == SyntaxKind.CommaToken && s_allowableKinds.Contains(previousToken.Parent.Kind()))
ChangeSignature\CSharpChangeSignatureService.cs (4)
114if (token.Kind() == SyntaxKind.SemicolonToken && token.Parent is StatementSyntax) 120if (token.Parent == null) 125var matchingNode = GetMatchingNode(token.Parent, restrictToDeclarations); 153token.Parent.AncestorsAndSelf().Any(a => a == objectCreation.Type))
CodeLens\CSharpCodeLensDisplayInfoService.cs (1)
68node = structuredTriviaSyntax.ParentTrivia.Token.Parent;
CodeRefactorings\EnableNullable\EnableNullableCodeRefactoringProvider.cs (5)
51token.Parent is not NullableDirectiveTriviaSyntax nullableDirectiveTrivia) 217if (firstToken.IsKind(SyntaxKind.HashToken) && firstToken.Parent.IsKind(SyntaxKind.RegionDirectiveTrivia)) 221var nextToken = firstToken.Parent.GetLastToken(includeDirectives: true).GetNextToken(includeDirectives: true); 222if (nextToken.IsKind(SyntaxKind.HashToken) && nextToken.Parent.IsKind(SyntaxKind.EndRegionDirectiveTrivia)) 224firstToken = nextToken.Parent.GetLastToken(includeDirectives: true).GetNextToken(includeDirectives: true);
CodeRefactorings\UseRecursivePatterns\UseRecursivePatternsCodeRefactoringProvider.cs (1)
61var node = root.FindToken(textSpan.Start).Parent;
Completion\CompletionProviders\AttributeNamedParameterCompletionProvider.cs (4)
73if (token.Parent!.Parent is not AttributeSyntax attributeSyntax || token.Parent is not AttributeArgumentListSyntax attributeArgumentList) 111if (token.Kind() == SyntaxKind.CommaToken && token.Parent is AttributeArgumentListSyntax argumentList) 133if (token.Kind() == SyntaxKind.CommaToken && token.Parent is AttributeArgumentListSyntax argumentList)
Completion\CompletionProviders\AwaitCompletionProvider.cs (2)
66var parent = token.Parent; 82return dotToken?.Parent switch
Completion\CompletionProviders\CrefCompletionProvider.cs (9)
105var parentNode = token.Parent?.FirstAncestorOrSelf<DocumentationCommentTriviaSyntax>()?.ParentTrivia.Token.Parent; 126token.Parent.IsKind(SyntaxKind.XmlCrefAttribute); 141if (token.Parent?.Kind() is not (SyntaxKind.CrefParameterList or SyntaxKind.CrefBracketedParameterList)) 145token.Parent.IsKind(SyntaxKind.CrefParameterList)) 151token.Parent.IsKind(SyntaxKind.CrefBracketedParameterList)) 165&& token.Parent.IsKind(SyntaxKind.QualifiedCref); 178return GetQualifiedSymbols((QualifiedCrefSyntax)token.Parent!, token, semanticModel, cancellationToken); 191var typeDeclaration = token.Parent?.FirstAncestorOrSelf<TypeDeclarationSyntax>();
Completion\CompletionProviders\CSharpSuggestionModeCompletionProvider.cs (13)
51var semanticModel = await document.ReuseExistingSpeculativeModelAsync(token.Parent, cancellationToken).ConfigureAwait(false); 103if (token.Parent is AnonymousObjectCreationExpressionSyntax) 116if (token.IsKind(SyntaxKind.NewKeyword) && token.Parent.IsKind(SyntaxKind.ObjectCreationExpression)) 124if (token.Kind() == SyntaxKind.LessThanToken && token.Parent is BinaryExpressionSyntax) 132if (token.Parent is not null and ParameterListSyntax) 134return token.Parent.Parent is not null and ParenthesizedLambdaExpressionSyntax; 142token.Parent is TupleExpressionSyntax tupleExpression && 145position = token.Parent.SpanStart; 169previousToken.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression)) 177if (token.Kind() is SyntaxKind.OpenParenToken or SyntaxKind.CommaToken && token.Parent.IsKind(SyntaxKind.ArgumentList) 178&& token.Parent.Parent is InvocationExpressionSyntax invocation 230if (lastTokenInPattern.Parent is SingleVariableDesignationSyntax variableDesignationSyntax && 231token.Parent == variableDesignationSyntax)
Completion\CompletionProviders\DeclarationName\DeclarationNameInfo.cs (10)
149token.Parent.IsKind(SyntaxKind.IdentifierName)) 151var argument = token.Parent.Parent as ArgumentSyntax // var is child of ArgumentSyntax, eg. Goo(out var $$ 152?? token.Parent.Parent?.Parent as ArgumentSyntax; // var is child of DeclarationExpression 249if (token.IsKind(SyntaxKind.CommaToken) && token.Parent != target) 379token.Parent is ConditionalExpressionSyntax conditionalExpressionSyntax) 431token.Parent.IsKind(SyntaxKind.TypeParameterList)) 480if (token.Parent.IsParentKind(SyntaxKind.IsExpression)) 489else if (token.Parent.IsParentKind(SyntaxKind.CaseSwitchLabel)) 498else if (token.Parent.IsParentKind(SyntaxKind.DeclarationPattern)) 517token.Parent.IsKind(SyntaxKind.PredefinedType);
Completion\CompletionProviders\EnumAndCompletionListTagCompletionProvider.cs (2)
295if (previousToken.Parent != null) 297var symbol = semanticModel.GetSymbolInfo(previousToken.Parent, cancellationToken).Symbol;
Completion\CompletionProviders\ExplicitInterfaceMemberCompletionProvider.cs (1)
66var node = targetToken.Parent;
Completion\CompletionProviders\ExplicitInterfaceTypeCompletionProvider.cs (1)
78var typeNode = targetToken.Parent as TypeSyntax;
Completion\CompletionProviders\ExternAliasCompletionProvider.cs (3)
65if (targetToken.Parent.IsKind(SyntaxKind.ExternAliasDirective) 66|| (targetToken.Parent.IsKind(SyntaxKind.IdentifierName) && targetToken.Parent.IsParentKind(SyntaxKind.IncompleteMember)))
Completion\CompletionProviders\FunctionPointerUnmanagedCallingConventionCompletionProvider.cs (1)
68if (token.Parent is not FunctionPointerUnmanagedCallingConventionListSyntax callingConventionList)
Completion\CompletionProviders\ImportCompletion\ImportCompletionProviderHelper.cs (1)
30var location = context.LeftToken.Parent ?? context.SyntaxTree.GetRoot(cancellationToken);
Completion\CompletionProviders\NamedParameterCompletionProvider.cs (1)
77if (token.Parent is not BaseArgumentListSyntax argumentList)
Completion\CompletionProviders\ObjectAndWithInitializerCompletionProvider.cs (8)
75if (token.Parent == null) 80if (token.Parent.Parent is not ExpressionSyntax expression) 125if (token.Parent == null || token.Parent.Parent == null) 132token.Parent.Kind() is not (SyntaxKind.ObjectInitializerExpression or SyntaxKind.WithInitializerExpression)) 148var parent = token.Parent?.Parent; 183if (token.Parent != null) 186if (token.Parent is InitializerExpressionSyntax initializer)
Completion\CompletionProviders\ObjectCreationCompletionProvider.cs (1)
57return newToken.Parent as ExpressionSyntax;
Completion\CompletionProviders\OperatorsAndIndexer\UnnamedSymbolCompletionProvider.cs (2)
87? dotToken.Parent as ExpressionSyntax 88: (dotToken.Parent as RangeExpressionSyntax)?.LeftOperand;
Completion\CompletionProviders\OverrideCompletionProvider.cs (3)
59if (startToken.Parent is TypeSyntax typeSyntax) 85var parentMember = token.Parent; 108if (token.Parent is not AttributeListSyntax)
Completion\CompletionProviders\PropertySubPatternCompletionProvider.cs (2)
183return token.Parent is PropertyPatternClauseSyntax { Parent: PatternSyntax } propertyPatternClause 192return token.Parent is MemberAccessExpressionSyntax memberAccess && IsExtendedPropertyPattern(memberAccess, out var propertyPatternClause)
Completion\CompletionProviders\Scripting\DirectiveCompletionProviderUtilities.cs (1)
22if (token.Kind() == SyntaxKind.StringLiteralToken && token.Parent!.Kind() == directiveKind)
Completion\CompletionProviders\SpeculativeTCompletionProvider.cs (4)
133if (tokenLeftOfGenericName.IsKind(SyntaxKind.DotToken) && tokenLeftOfGenericName.Parent.IsKind(SyntaxKind.QualifiedName)) 135spanStart = tokenLeftOfGenericName.Parent.SpanStart; 147if (prevToken.Kind() is SyntaxKind.RefKeyword or SyntaxKind.ReadOnlyKeyword && prevToken.Parent.IsKind(SyntaxKind.RefType)) 162return prevToken.Parent!.SpanStart;
Completion\CompletionProviders\SymbolCompletionProvider.cs (1)
156if (token.Parent?.Kind() is not (SyntaxKind.ArgumentList or SyntaxKind.BracketedArgumentList or SyntaxKind.AttributeArgumentList or SyntaxKind.ArrayRankSpecifier))
Completion\CompletionProviders\TupleNameCompletionProvider.cs (4)
59var inferredTypes = typeInferrer.InferTypes(semanticModel, context.TargetToken.Parent!.SpanStart, cancellationToken) 64AddItems(inferredTypes, index.Value, completionContext, context.TargetToken.Parent.SpanStart); 77if (token.Parent is (kind: SyntaxKind.ParenthesizedExpression or SyntaxKind.TupleExpression or SyntaxKind.CastExpression)) 83if (token.IsKind(SyntaxKind.CommaToken) && token.Parent is TupleExpressionSyntax tupleExpr)
Completion\CompletionProviders\XmlDocCommentCompletionProvider.cs (24)
69var semanticModel = await document.ReuseExistingSpeculativeModelAsync(attachedToken.Parent, cancellationToken).ConfigureAwait(false); 113if (token.Parent.IsKind(SyntaxKind.XmlEmptyElement) || token.Parent.IsKind(SyntaxKind.XmlText) || 114(token.Parent.IsKind(SyntaxKind.XmlElementEndTag) && token.IsKind(SyntaxKind.GreaterThanToken)) || 115(token.Parent.IsKind(SyntaxKind.XmlName) && token.Parent.IsParentKind(SyntaxKind.XmlEmptyElement))) 118if (token.Parent.IsParentKind(SyntaxKind.XmlElement) || 119token.Parent.Parent.IsParentKind(SyntaxKind.XmlElement)) 126|| (token.Parent.IsKind(SyntaxKind.XmlName) && !token.HasLeadingTrivia); 132if (token.Parent.Parent is XmlElementSyntax xmlElement) 137if (token.Parent.IsParentKind(SyntaxKind.XmlEmptyElement) && 138token.Parent.Parent!.Parent is XmlElementSyntax nestedXmlElement) 143if (token.Parent.Parent is DocumentationCommentTriviaSyntax || 144(token.Parent.Parent.IsKind(SyntaxKind.XmlEmptyElement) && token.Parent.Parent.Parent is DocumentationCommentTriviaSyntax)) 150if (token.Parent is XmlElementStartTagSyntax startTag && 202if (token.IsKind(SyntaxKind.IdentifierToken) && token.Parent.IsKind(SyntaxKind.XmlName)) 206(elementName, attributes) = GetElementNameAndAttributes(token.Parent.Parent!); 208else if (token.Parent is XmlAttributeSyntax( 264if (token.Parent.IsKind(SyntaxKind.IdentifierName) && 265token.Parent?.Parent is XmlNameAttributeSyntax xmlName) 271token.Parent is XmlTextAttributeSyntax xmlText) 276else if (token.Parent.IsKind(SyntaxKind.XmlNameAttribute, out attributeSyntax) || 277token.Parent.IsKind(SyntaxKind.XmlTextAttribute, out attributeSyntax))
Completion\KeywordRecommenders\BaseKeywordRecommender.cs (3)
52token.Parent is ConstructorInitializerSyntax && 53token.Parent.IsParentKind(SyntaxKind.ConstructorDeclaration) && 54token.Parent.Parent?.Parent is (kind: SyntaxKind.ClassDeclaration or SyntaxKind.RecordDeclaration))
Completion\KeywordRecommenders\DynamicKeywordRecommender.cs (1)
73context.TargetToken.Parent.IsKind(SyntaxKind.RefType);
Completion\KeywordRecommenders\ExternKeywordRecommender.cs (3)
91token.Parent.IsKind(SyntaxKind.NamespaceDeclaration)) 99token.Parent.IsKind(SyntaxKind.FileScopedNamespaceDeclaration)) 107token.Parent.IsKind(SyntaxKind.ExternAliasDirective))
Completion\KeywordRecommenders\InKeywordRecommender.cs (4)
66if (token.Parent is ForEachStatementSyntax statement && token == statement.Identifier) 93var typeSyntax = token.Parent as TypeSyntax; 100if (token.Parent is FromClauseSyntax fromClause) 120var joinClause = token.Parent?.FirstAncestorOrSelf<JoinClauseSyntax>();
Completion\KeywordRecommenders\MethodKeywordRecommender.cs (1)
30token.Parent.IsKind(SyntaxKind.AttributeList))
Completion\KeywordRecommenders\NamespaceKeywordRecommender.cs (10)
105token.Parent.IsKind(SyntaxKind.NamespaceDeclaration)) 117if (token.Parent is (kind: SyntaxKind.ExternAliasDirective or SyntaxKind.UsingDirective) && 118!token.Parent.Parent.IsKind(SyntaxKind.FileScopedNamespaceDeclaration)) 128if (token.Parent is TypeDeclarationSyntax && 129token.Parent.Parent is not TypeDeclarationSyntax) 133else if (token.Parent.IsKind(SyntaxKind.NamespaceDeclaration)) 144if (token.Parent.IsKind(SyntaxKind.DelegateDeclaration) && 145token.Parent.Parent is not TypeDeclarationSyntax) 155token.Parent.IsKind(SyntaxKind.AttributeList) && 156token.Parent.IsParentKind(SyntaxKind.CompilationUnit))
Completion\KeywordRecommenders\NewKeywordRecommender.cs (1)
103token.Parent is TypeParameterConstraintClauseSyntax constraintClause)
Completion\KeywordRecommenders\ParamKeywordRecommender.cs (1)
24token.Parent.IsKind(SyntaxKind.AttributeList))
Completion\KeywordRecommenders\ReadOnlyKeywordRecommender.cs (1)
46(context.TargetToken.Parent.IsKind(SyntaxKind.RefType) || context.IsFunctionPointerTypeArgumentContext);
Completion\KeywordRecommenders\RefKeywordRecommender.cs (2)
178var parent = token.Parent; 187return token.Parent?.Kind() == SyntaxKind.ConditionalExpression;
Completion\KeywordRecommenders\ScopedKeywordRecommender.cs (1)
50return token.Parent is ArgumentSyntax;
Completion\KeywordRecommenders\ThisKeywordRecommender.cs (2)
47token.Parent is ConstructorInitializerSyntax && 48token.Parent.IsParentKind(SyntaxKind.ConstructorDeclaration))
Completion\KeywordRecommenders\ThrowKeywordRecommender.cs (1)
41return context.TargetToken.Parent.IsKind(SyntaxKind.ConditionalExpression);
Completion\KeywordRecommenders\TypeVarKeywordRecommender.cs (1)
24token.Parent.IsKind(SyntaxKind.AttributeList))
Completion\KeywordRecommenders\UsingKeywordRecommender.cs (4)
103if ((token.Kind() == SyntaxKind.OpenBraceToken && token.Parent.IsKind(SyntaxKind.NamespaceDeclaration)) 104|| (token.Kind() == SyntaxKind.SemicolonToken && token.Parent.IsKind(SyntaxKind.FileScopedNamespaceDeclaration))) 123if (token.Parent is (kind: SyntaxKind.ExternAliasDirective or SyntaxKind.UsingDirective)) 152previousToken.Parent is (kind: SyntaxKind.ExternAliasDirective or SyntaxKind.UsingDirective))
Completion\KeywordRecommenders\VoidKeywordRecommender.cs (1)
80token.Parent.IsKind(SyntaxKind.ParenthesizedExpression))
Completion\KeywordRecommenders\WhereKeywordRecommender.cs (5)
58token.Parent.IsKind(SyntaxKind.ParameterList) && 59token.Parent.IsParentKind(SyntaxKind.DelegateDeclaration)) 71token.Parent.IsKind(SyntaxKind.ParameterList) && 72token.Parent.IsParentKind(SyntaxKind.MethodDeclaration)) 90if (token.Parent is IdentifierNameSyntax && token.HasMatchingText(SyntaxKind.WhereKeyword))
Completion\KeywordRecommenders\WhileKeywordRecommender.cs (2)
41token.Parent.IsKind(SyntaxKind.Block) && 42token.Parent.IsParentKind(SyntaxKind.DoStatement))
ConvertToRawString\ConvertRegularStringToRawStringCodeRefactoringProvider.cs (3)
120if (IsInDirective(token.Parent)) 123if (token.Parent is not LiteralExpressionSyntax) 246if (stringLiteral.Parent is not LiteralExpressionSyntax literalExpression)
CSharpReplaceDefaultLiteralCodeFixProvider.cs (1)
50token.Parent is LiteralExpressionSyntax(SyntaxKind.DefaultLiteralExpression) defaultLiteral)
CSharpUseDeconstructionCodeFixProvider.cs (1)
46var nodesToProcess = diagnostics.SelectAsArray(d => d.Location.FindToken(cancellationToken).Parent);
Debugging\DataTipInfoGetter.cs (1)
34if (token.Parent is not ExpressionSyntax expression)
EditAndContinue\BreakpointSpans.cs (1)
65var node = root.FindToken(position).Parent;
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (1)
372node = declarationBody.FindToken(position).Parent!;
ExtractMethod\CSharpMethodExtractor.cs (1)
51var currentNode = basePosition.Parent;
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.cs (2)
667var usingKeyword = originalIdentifierToken.Parent?.Parent?.Parent is LocalDeclarationStatementSyntax { UsingKeyword.FullSpan.IsEmpty: false } 846scope = CSharpSelectionResult.GetFirstTokenInSelection().Parent;
ExtractMethod\CSharpSelectionResult.cs (5)
79var current = token.Parent; 113var statement = firstToken.Parent.GetStatementUnderContainer(); 124var statement = lastToken.Parent.GetStatementUnderContainer(); 191return token.Parent.IsUnsafeContext(); 203var contextNode = token.Parent.GetAncestor<T>();
ExtractMethod\Extensions.cs (2)
158if (token.Parent is not ThrowStatementSyntax throwStatement || throwStatement.Expression != null) 268if (token1.RawKind != (int)SyntaxKind.SemicolonToken || !(token1.Parent is FieldDeclarationSyntax))
GenerateMember\GenerateVariable\CSharpGenerateVariableService.cs (1)
199var node = identifierToken.Parent as IdentifierNameSyntax;
GenerateType\CSharpGenerateTypeService.cs (1)
248simpleName.Parent == token.Parent)
ImplementInterface\AbstractChangeImplementationCodeRefactoringProvider.cs (1)
155for (var node = token.Parent; node != null; node = node.Parent)
ImplementInterface\CSharpImplementInterfaceCodeFixProvider.cs (1)
56var actions = token.Parent.GetAncestorsOrThis<TypeSyntax>()
IntroduceVariable\CSharpIntroduceVariableService.Rewriter.cs (1)
48var innerExpression = parenthesizedExpression.OpenParenToken.GetNextToken().Parent;
MetadataAsSource\FormattingRule.cs (2)
38if (previousToken.Kind() == SyntaxKind.SemicolonToken && previousToken.Parent.Kind() == SyntaxKind.UsingDirective) 40previousMember = previousToken.Parent;
MultiLineConditionalExpressionFormattingRule.cs (1)
39return token.Parent.HasAnnotation(SpecializedFormattingAnnotation);
QuickInfo\CSharpDiagnosticAnalyzerQuickInfoProvider.cs (1)
59var errorCodeNode = token.Parent switch
QuickInfo\CSharpSemanticQuickInfoProvider.cs (8)
32&& token.Parent is (kind: SyntaxKind.ParenthesizedLambdaExpression or SyntaxKind.SimpleLambdaExpression)) 35found = token.Parent; 38else if (token.IsKind(SyntaxKind.DelegateKeyword) && token.Parent.IsKind(SyntaxKind.AnonymousMethodExpression)) 41found = token.Parent; 52token.Parent?.Parent.IsKind(SyntaxKind.ElementAccessExpression) == true) 54found = token.Parent.Parent; 65token.Parent is MemberAccessExpressionSyntax memberAccess) 76=> !token.Parent.IsKind(SyntaxKind.XmlCrefAttribute);
QuickInfo\CSharpSyntacticQuickInfoProvider.cs (3)
61if (token.Parent is InterpolationSyntax interpolation && 68var parent = token.Parent!; 146if (token.Parent is DirectiveTriviaSyntax directiveTrivia)
RemoveUnusedVariable\CSharpRemoveUnusedVariableCodeFixProvider.cs (1)
36=> token.Parent is CatchDeclarationSyntax catchDeclaration && catchDeclaration.Identifier == token;
Rename\CSharpRenameIssuesService.cs (2)
42triggerToken.Parent!, 58var parent = token.Parent;
ReplaceMethodWithProperty\CSharpReplaceMethodWithPropertyService.cs (2)
366if (nameToken.Parent is not IdentifierNameSyntax nameNode) 379newName = newName.WithTriviaFrom(invocation is null ? nameToken.Parent : invocation);
SignatureHelp\AttributeSignatureHelpProvider.cs (2)
62token.Parent is AttributeArgumentListSyntax && 63token.Parent.Parent is AttributeSyntax;
SignatureHelp\ElementAccessExpressionSignatureHelpProvider.cs (16)
116if (openBracket.Parent is BracketedArgumentListSyntax) 127else if (openBracket.Parent is ArrayRankSpecifierSyntax) 156var newBracketedArgumentList = SyntaxFactory.ParseBracketedArgumentList(openBracket.Parent!.ToString()); 291token.Parent is BracketedArgumentListSyntax && 292token.Parent.Parent is ElementAccessExpressionSyntax; 303Contract.ThrowIfFalse(openBracket.Parent is BracketedArgumentListSyntax && 304(openBracket.Parent.Parent is ElementAccessExpressionSyntax || openBracket.Parent.Parent is ElementBindingExpressionSyntax)); 305return SignatureHelpUtilities.GetSignatureHelpSpan((BracketedArgumentListSyntax)openBracket.Parent); 340token.Parent is ArrayRankSpecifierSyntax; 345Contract.ThrowIfFalse(openBracket.Parent is ArrayRankSpecifierSyntax && openBracket.Parent.Parent is ArrayTypeSyntax); 346return TextSpan.FromBounds(expression.SpanStart, openBracket.Parent.Span.End); 375token.Parent is BracketedArgumentListSyntax && 376token.Parent.Parent is ElementBindingExpressionSyntax && 377token.Parent.Parent.Parent is ConditionalAccessExpressionSyntax;
SignatureHelp\GenericNameSignatureHelpProvider.cs (6)
66token.Parent is TypeArgumentListSyntax && 67token.Parent.Parent is GenericNameSyntax; 86if (genericIdentifier.Parent is not SimpleNameSyntax simpleName) 164Contract.ThrowIfFalse(lessThanToken.Parent is TypeArgumentListSyntax && lessThanToken.Parent.Parent is GenericNameSyntax); 165return SignatureHelpUtilities.GetSignatureHelpSpan(((GenericNameSyntax)lessThanToken.Parent.Parent).TypeArgumentList);
SignatureHelp\InitializerExpressionSignatureHelpProvider.cs (1)
51token.Parent is InitializerExpressionSyntax;
SignatureHelp\SignatureHelpUtilities.cs (4)
104token.Parent is ParenthesizedExpressionSyntax parenExpr) 130if (token.IsKind(SyntaxKind.CommaToken) && token.Parent is TupleExpressionSyntax && token.GetAncestor<TSyntaxNode>() != null) 138token.Parent is ArgumentListSyntax && 139token.Parent.Parent is TSyntaxNode;
SignatureHelp\TupleConstructionSignatureHelpProvider.cs (1)
227=> token.IsKind(SyntaxKind.OpenParenToken) && token.Parent is ParenthesizedExpressionSyntax;
SplitStringLiteral\SimpleStringSplitter.cs (1)
43protected override SyntaxNode GetNodeToReplace() => _token.Parent;
SplitStringLiteral\StringSplitter.cs (1)
85token.Parent.IsKind(SyntaxKind.Interpolation) &&
UseAutoProperty\CSharpUseAutoPropertyCodeFixProvider.cs (3)
96if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent.IsKind(SyntaxKind.AccessorList)) 101if (previousToken.IsKind(SyntaxKind.OpenBraceToken) && previousToken.Parent.IsKind(SyntaxKind.AccessorList)) 106if (currentToken.IsKind(SyntaxKind.CloseBraceToken) && currentToken.Parent.IsKind(SyntaxKind.AccessorList))
UseExplicitTypeCodeFixProvider.cs (1)
128varDecl.Variables.Single().Identifier.Parent!,
UseExpressionBody\UseExpressionBodyCodeRefactoringProvider.cs (1)
70var node = root.FindToken(position).Parent!;
Wrapping\SeparatedSyntaxList\CSharpArgumentWrapper.cs (1)
101for (var current = token.Parent; current != listSyntax; current = current?.Parent)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (17)
Semantics\LookupPositionTests.cs (1)
3132position, token.ToString(), token.Parent.ToString(), keyPositionNum, KeyPositionMarker));
Semantics\MethodTypeInferenceTests.cs (4)
1118var book = (IdentifierNameSyntax)tree.GetRoot().DescendantTokens().Last(t => t.Text == "b").Parent; 1159var author = (IdentifierNameSyntax)tree.GetRoot().DescendantTokens().Last(t => t.Text == "a").Parent; 1200var bookResult = (IdentifierNameSyntax)tree.GetRoot().DescendantTokens().Last(t => t.Text == "bookResult").Parent; 1204var authorResult = (IdentifierNameSyntax)tree.GetRoot().DescendantTokens().Last(t => t.Text == "authorResult").Parent;
Semantics\OutVarTests.cs (1)
1177var parent = local.IdentifierToken.Parent;
Semantics\QueryTests.cs (8)
2177SelectClauseSyntax selectClause = (SelectClauseSyntax)tree.GetCompilationUnitRoot().FindToken(sourceCode.IndexOf("select", StringComparison.Ordinal)).Parent; 2207SelectClauseSyntax selectClause = (SelectClauseSyntax)tree.GetCompilationUnitRoot().FindToken(sourceCode.IndexOf("select w", StringComparison.Ordinal)).Parent; 2234var e = (IdentifierNameSyntax)tree.GetCompilationUnitRoot().FindToken(sourceCode.IndexOf("x+1", StringComparison.Ordinal)).Parent; 2240e = (IdentifierNameSyntax)tree.GetCompilationUnitRoot().FindToken(sourceCode.IndexOf("w+1", StringComparison.Ordinal)).Parent; 2272var queryContinuation = tree.GetRoot().FindToken(sourceCode.IndexOf("into w", StringComparison.Ordinal)).Parent; 2325var joinInto = tree.GetRoot().FindToken(sourceCode.IndexOf("into x8", StringComparison.Ordinal)).Parent; 3134var selectNode = tree.GetCompilationUnitRoot().FindToken(index).Parent as SelectClauseSyntax; 3162var joinNode = tree.GetCompilationUnitRoot().FindToken(index).Parent as JoinClauseSyntax;
Semantics\TopLevelStatementsTests.cs (2)
9696var conversionInTopLevel = speculativeModelInTopLevel.GetConversion(nodeToSpeculate.DescendantTokens().Single(n => n.ValueText == "x").Parent); 9701var conversionOutsideTopLevel = speculativeModelOutsideTopLevel.GetConversion(nodeToSpeculate.DescendantTokens().Single(n => n.ValueText == "x").Parent);
Semantics\UnsafeTests.cs (1)
5509var node = (ExpressionSyntax)nullSyntax.Parent;
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (35)
Compilation\GetSemanticInfoTests.cs (5)
4212var syntax = tree.GetCompilationUnitRoot().FindToken(position).Parent.DescendantNodesAndSelf().OfType<OmittedTypeArgumentSyntax>().Single(); 4242var syntax = tree.GetCompilationUnitRoot().FindToken(position).Parent.DescendantNodesAndSelf().OfType<OmittedTypeArgumentSyntax>().Single(); 4272var syntax = tree.GetCompilationUnitRoot().FindToken(position).Parent.DescendantNodesAndSelf().OfType<GenericNameSyntax>().Single(); 4911var equalsNode = equalsToken.Parent; 5914var expr = tokens.Single(t => t.Kind() == SyntaxKind.TrueKeyword).Parent;
Compilation\SemanticModelAPITests.cs (1)
4059var x = tree.GetRoot().FindToken(match.Index + 4).Parent;
Compilation\SemanticModelGetDeclaredSymbolAPITests.cs (17)
429var node = root.FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("public event D Iter3", StringComparison.Ordinal)).Parent as BasePropertyDeclarationSyntax; 3314var paramNode = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("param1", StringComparison.Ordinal)).Parent; 3341var paramNode = root.FindToken(root.ToFullString().IndexOf('x')).Parent; 3367var paramNode = root.FindToken(root.ToFullString().IndexOf('x')).Parent; 3408var foreachNode = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("foreach", StringComparison.Ordinal)).Parent; 3429var delegateNode = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("delegate", StringComparison.Ordinal)).Parent; 3448var usingNode = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("using", StringComparison.Ordinal)).Parent; 3477var foreachNode = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("aaa", StringComparison.Ordinal)).Parent; 3501var foreachNode = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("aaa", StringComparison.Ordinal)).Parent; 3528var foreachNode1 = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("aaa", StringComparison.Ordinal)).Parent; 3534var foreachNode2 = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("bbb", StringComparison.Ordinal)).Parent; 3565var catchDeclaration = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("aaa", StringComparison.Ordinal)).Parent; 3586var methodDecl = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("Goo", StringComparison.Ordinal)).Parent; 3611var methodDecl = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("Goo", StringComparison.Ordinal)).Parent; 3668dynamic methodDecl = (MethodDeclarationSyntax)tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("Main", StringComparison.Ordinal)).Parent; 3686var globalStmt = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf('/')).Parent.AncestorsAndSelf().Single(x => x.IsKind(SyntaxKind.GlobalStatement)); 3866var node = (IdentifierNameSyntax)tree.GetCompilationUnitRoot().DescendantTokens().Where(t => t.ToString() == "Alias").Last().Parent;
DeclarationTests.cs (1)
396for (var node = token.Parent; node != null; node = node.Parent)
Symbols\ConversionTests.cs (3)
392.FindToken(source.IndexOf("ii", StringComparison.Ordinal)).Parent; 399.FindToken(source.IndexOf("jj)", StringComparison.Ordinal)).Parent; 405.FindToken(source.IndexOf("ss)", StringComparison.Ordinal)).Parent;
Symbols\ExtensionMethodTests.cs (2)
2733var node = tree.GetCompilationUnitRoot().FindToken(code.IndexOf("GetHashCode", StringComparison.Ordinal)).Parent; 2743node = tree.GetCompilationUnitRoot().FindToken(code.IndexOf("Cast<T1>", StringComparison.Ordinal)).Parent;
Symbols\Source\DeclaringSyntaxNodeTests.cs (6)
140var node = tree.GetRoot().FindToken(position).Parent.FirstAncestorOrSelf<TNode>(); 155var node = tree.GetCompilationUnitRoot().FindToken(position).Parent.FirstAncestorOrSelf<TNode>(); 263var declaratorA1 = tree.GetCompilationUnitRoot().FindToken(posA1).Parent.FirstAncestorOrSelf<VariableDeclaratorSyntax>(); 307var declaratorQ = tree.GetCompilationUnitRoot().FindToken(posQ).Parent.FirstAncestorOrSelf<VariableDeclaratorSyntax>(); 314var declaratorX = tree.GetCompilationUnitRoot().FindToken(posX).Parent.FirstAncestorOrSelf<VariableDeclaratorSyntax>(); 321var declaratorZ = tree.GetCompilationUnitRoot().FindToken(posZ).Parent.FirstAncestorOrSelf<VariableDeclaratorSyntax>();
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (18)
Diagnostics\LocationsTests.cs (1)
458var expressionDiags = syntaxTree.GetDiagnostics(token.Parent.Parent);
Parsing\ParsingErrorRecoveryTests.cs (1)
6590var foreachNode = srcTree.GetLastToken().Parent;
Syntax\StructuredTriviaTests.cs (1)
85var foundDocComment = result.Parent.Parent.Parent.Parent;
Syntax\SyntaxNodeTests.cs (15)
2445var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2460var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2476var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2493var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2514var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2533var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2549var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2565var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2581var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2601var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2618var n = expr.DescendantTokens().Where(t => t.Text == "a").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2632var n = expr.DescendantTokens().Where(t => t.Text == "a").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2646var n = expr.DescendantTokens().Where(t => t.Text == "c").Select(t => t.Parent.FirstAncestorOrSelf<ArgumentSyntax>()).FirstOrDefault(); 2660var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<StatementSyntax>()).FirstOrDefault(); 2674var b = expr.DescendantTokens().Where(t => t.Text == "b").Select(t => t.Parent.FirstAncestorOrSelf<StatementSyntax>()).FirstOrDefault();
Microsoft.CodeAnalysis.CSharp.Test.Utilities (3)
CompilationTestUtils.cs (1)
516var node = token.Parent;
CSharpTestBase.cs (1)
1672var node = tree.GetRoot().FindToken(start).Parent;
SemanticModelTestBase.cs (1)
141var nameSyntaxToBind = tree.GetRoot().FindToken(position, findInsideTrivia: true).Parent as IdentifierNameSyntax;
Microsoft.CodeAnalysis.CSharp.Workspaces (543)
Classification\ClassificationHelpers.cs (40)
63if (token.Parent is null || !IsControlKeywordKind(token.Kind())) 68return IsControlStatementKind(token.Parent.Kind()); 175return token.Parent is InterpolatedStringExpressionSyntax interpolatedString 181if (token.Parent is not InterpolatedStringTextSyntax interpolatedStringText) 196if (token.Parent is BaseTypeDeclarationSyntax typeDeclaration && typeDeclaration.Identifier == token) 200else if (token.Parent is DelegateDeclarationSyntax delegateDecl && delegateDecl.Identifier == token) 204else if (token.Parent is TypeParameterSyntax typeParameter && typeParameter.Identifier == token) 208else if (token.Parent is MethodDeclarationSyntax methodDeclaration && methodDeclaration.Identifier == token) 212else if (token.Parent is ConstructorDeclarationSyntax constructorDeclaration && constructorDeclaration.Identifier == token) 216else if (token.Parent is DestructorDeclarationSyntax destructorDeclaration && destructorDeclaration.Identifier == token) 220else if (token.Parent is LocalFunctionStatementSyntax localFunctionStatement && localFunctionStatement.Identifier == token) 224else if (token.Parent is PropertyDeclarationSyntax propertyDeclaration && propertyDeclaration.Identifier == token) 228else if (token.Parent is EnumMemberDeclarationSyntax enumMemberDeclaration && enumMemberDeclaration.Identifier == token) 232else if (token.Parent is CatchDeclarationSyntax catchDeclaration && catchDeclaration.Identifier == token) 236else if (token.Parent is VariableDeclaratorSyntax variableDeclarator && variableDeclarator.Identifier == token) 247else if (token.Parent is SingleVariableDesignationSyntax singleVariableDesignation && singleVariableDesignation.Identifier == token) 251else if (token.Parent is ParameterSyntax parameterSyntax && parameterSyntax.Identifier == token) 255else if (token.Parent is ForEachStatementSyntax forEachStatementSyntax && forEachStatementSyntax.Identifier == token) 259else if (token.Parent is EventDeclarationSyntax eventDeclarationSyntax && eventDeclarationSyntax.Identifier == token) 267else if (token.Parent is IdentifierNameSyntax identifierNameSyntax && IsNamespaceName(identifierNameSyntax)) 271else if (token.Parent is ExternAliasDirectiveSyntax externAliasDirectiveSyntax && externAliasDirectiveSyntax.Identifier == token) 275else if (token.Parent is LabeledStatementSyntax labledStatementSyntax && labledStatementSyntax.Identifier == token) 308var parentNode = token.Parent; 337=> identifier.Parent!.Kind() switch 359if (token.Parent != null) 361if (token.Parent.Kind() is SyntaxKind.TypeParameterList or 373if (token.Parent != null) 375if (token.Parent.Kind() != SyntaxKind.ConditionalExpression) 448if (token.Parent is LabeledStatementSyntax statement && 463if (token.Parent != null) 471var fromClause = token.Parent.FirstAncestorOrSelf<FromClauseSyntax>(); 476if (token.Parent is IdentifierNameSyntax && token.Parent?.Parent is ExpressionStatementSyntax) 484token.Parent is IdentifierNameSyntax && 485token.Parent.Parent is VariableDeclarationSyntax && 486!(token.Parent.Parent.Parent is FieldDeclarationSyntax) && 487!(token.Parent.Parent.Parent is EventFieldDeclarationSyntax); 491return token.Parent is IdentifierNameSyntax 492&& token.Parent.Parent is TypeConstraintSyntax 493&& token.Parent.Parent.Parent is TypeParameterConstraintClauseSyntax;
Classification\SyntaxClassification\SyntaxTokenClassifier.cs (2)
59if (identifier.Parent is not IdentifierNameSyntax identifierName) 75if (identifier.Parent.IsParentKind(SyntaxKind.ConditionalAccessExpression))
Classification\Worker_DocumentationComments.cs (2)
161RoslynDebug.Assert(token.Parent is object); 162switch (token.Parent.Kind())
CodeGeneration\CSharpSyntaxGenerator.cs (1)
3073if (previousToken != default && root.Contains(previousToken.Parent))
CSharpCodeGenerationHelpers.cs (1)
203return contextTree?.GetRoot(cancellationToken).FindToken(contextLocation!.SourceSpan.Start).Parent;
CSharpCodeGenerationService.cs (1)
540var block = token.Parent.GetAncestorsOrThis<BlockSyntax>().FirstOrDefault();
CSharpIndentationService.Indenter.cs (14)
124|| token is { RawKind: (int)SyntaxKind.CloseBraceToken, Parent: InterpolationSyntax }) 180(token.IsKind(SyntaxKind.CloseBraceToken) && token.Parent.IsKind(SyntaxKind.Interpolation))) 187if (token.Parent is LabeledStatementSyntax || token.IsLastTokenInLabelStatement()) 224token.Parent != null && 225(token.Parent.Parent is StatementSyntax || token.Parent.Parent is ElseClauseSyntax)); 227var embeddedStatementOwner = token.Parent.Parent; 252if (token.Parent.IsKind(SyntaxKind.AccessorList) && 253token.Parent.Parent.IsKind(SyntaxKind.PropertyDeclaration)) 271var nonTerminalNode = token.Parent; 284var nonTerminalNode = token.Parent; 308if (token.Parent.IsKind(SyntaxKind.ArgumentList)) 310return GetDefaultIndentationFromToken(indenter, token.Parent.GetFirstToken(includeZeroWidth: true)); 324=> token.Parent switch
CSharpSmartTokenFormatter.cs (5)
74endToken.Parent.IsKind(SyntaxKind.Block) && 75(endToken.Parent.IsParentKind(SyntaxKind.TryStatement) || endToken.Parent.IsParentKind(SyntaxKind.DoStatement)); 96(token.Parent.IsInitializerForArrayOrCollectionCreationExpression() || 97token.Parent is AnonymousObjectCreationExpressionSyntax))
CSharpSyntaxContext.cs (9)
228targetToken.Parent.IsKind(SyntaxKind.DestructorDeclaration) && 229targetToken.Parent.Parent is (kind: SyntaxKind.ClassDeclaration or SyntaxKind.RecordDeclaration); 238var isOnArgumentListBracketOrComma = targetToken.Parent is (kind: SyntaxKind.ArgumentList or SyntaxKind.AttributeArgumentList or SyntaxKind.ArrayRankSpecifier); 325token.Parent.IsKind(SyntaxKind.AttributeList) && 364token.Parent.IsKind(SyntaxKind.AttributeList)) 366if (token.Parent.Parent is ParameterSyntax { Parent: ParameterListSyntax { Parent: RecordDeclarationSyntax } }) 386token.Parent.IsKind(SyntaxKind.AttributeList) && 387token.Parent.Parent is StatementSyntax) 484return targetToken.Parent switch
CSharpSyntaxFacts.cs (15)
103(token.Parent is PrefixUnaryExpressionSyntax || token.Parent is PostfixUnaryExpressionSyntax || token.Parent is OperatorDeclarationSyntax)) || 104(SyntaxFacts.IsBinaryExpression(kind) && (token.Parent is BinaryExpressionSyntax or OperatorDeclarationSyntax or RelationalPatternSyntax)) || 105(SyntaxFacts.IsAssignmentExpressionOperatorToken(kind) && token.Parent is AssignmentExpressionSyntax); 276=> token.Parent is ConstructorInitializerSyntax(SyntaxKind.ThisConstructorInitializer) constructorInit && 280=> token.Parent is ConstructorInitializerSyntax(SyntaxKind.BaseConstructorInitializer) constructorInit && 295return token.Parent is QueryClauseSyntax; 299return token.Parent is SelectOrGroupClauseSyntax; 302return token.Parent is OrderingSyntax; 304return token.Parent is (kind: SyntaxKind.JoinIntoClause or SyntaxKind.QueryContinuation); 525if (token.Kind() == SyntaxKind.CommaToken && token.Parent.IsKind(SyntaxKind.OrderByClause)) 706var node = root.FindToken(position).Parent; 984var node = token.Parent; 1411if (token.Kind() == SyntaxKind.OverrideKeyword && token.Parent is MemberDeclarationSyntax member)
CSharpTriviaFormatter.DocumentationCommentExteriorCommentRewriter.cs (1)
68var currentParent = trivia.Token.Parent;
CSharpTypeInferenceService.TypeInferrer.cs (1)
198var parent = token.Parent;
CSharpVirtualCharService.cs (2)
37if (token.Parent?.Parent is InterpolatedStringExpressionSyntax { StringStartToken.RawKind: (int)SyntaxKind.InterpolatedMultiLineRawStringStartToken }) 55if (IsInDirective(token.Parent))
DirectiveSyntaxExtensions.cs (1)
30node = node.ParentTrivia.Token.Parent;
ElasticTriviaFormattingRule.cs (35)
104currentToken.Parent.IsKind(SyntaxKind.TypeParameterConstraintClause)) 106RoslynDebug.AssertNotNull(previousToken.Parent); 109if (previousToken.Parent.Ancestors().OfType<TypeParameterConstraintClauseSyntax>().Any()) 115var firstTokenAfterTypeConstraint = currentToken.Parent.GetLastToken().GetNextToken(); 116var lastTokenForTypeConstraint = currentToken.Parent.GetLastToken().GetNextToken(); 119firstTokenAfterTypeConstraint.Parent.IsKind(SyntaxKind.TypeParameterConstraintClause)) 131currentToken.Parent.IsParentKind(SyntaxKind.IfStatement)) 173if (previousToken.Parent is not FileScopedNamespaceDeclarationSyntax) 281if (previousToken.IsKind(SyntaxKind.CloseBracketToken) && previousToken.Parent is AttributeListSyntax 282&& !(currentToken.Parent is AttributeListSyntax)) 315return (((previousToken.Parent is StatementSyntax) && currentToken.Parent != previousToken.Parent) 321if (previousToken.Parent is AttributeListSyntax parent) 327if (!currentToken.IsKind(SyntaxKind.EndOfFileToken) && !(currentToken.Parent is AttributeListSyntax)) 346return previousToken.Parent is EnumDeclarationSyntax ? 1 : 0; 352if (previousToken.Parent is LabeledStatementSyntax or SwitchLabelSyntax) 360if ((currentToken.Kind() == SyntaxKind.FromKeyword && currentToken.Parent.IsKind(SyntaxKind.FromClause)) || 361(currentToken.Kind() == SyntaxKind.LetKeyword && currentToken.Parent.IsKind(SyntaxKind.LetClause)) || 362(currentToken.Kind() == SyntaxKind.WhereKeyword && currentToken.Parent.IsKind(SyntaxKind.WhereClause)) || 363(currentToken.Kind() == SyntaxKind.JoinKeyword && currentToken.Parent.IsKind(SyntaxKind.JoinClause)) || 364(currentToken.Kind() == SyntaxKind.JoinKeyword && currentToken.Parent.IsKind(SyntaxKind.JoinIntoClause)) || 365(currentToken.Kind() == SyntaxKind.OrderByKeyword && currentToken.Parent.IsKind(SyntaxKind.OrderByClause)) || 366(currentToken.Kind() == SyntaxKind.SelectKeyword && currentToken.Parent.IsKind(SyntaxKind.SelectClause)) || 367(currentToken.Kind() == SyntaxKind.GroupKeyword && currentToken.Parent.IsKind(SyntaxKind.GroupClause))) 383if (currentToken.Parent is AttributeListSyntax parent) 390if (previousToken.Parent is not AttributeListSyntax) 409return previousToken.Parent is TypeParameterListSyntax ? 1 : 0; 430nextToken.Parent.IsKind(SyntaxKind.DoStatement)) 446if (previousToken.Parent is ForStatementSyntax) 454else if (previousToken.Parent is UsingDirectiveSyntax) 456return currentToken.Parent is UsingDirectiveSyntax ? 1 : 2; 458else if (previousToken.Parent is ExternAliasDirectiveSyntax) 460return currentToken.Parent is ExternAliasDirectiveSyntax ? 1 : 2; 462else if (currentToken.Parent is LocalFunctionStatementSyntax)
Formatting\CSharpSyntaxFormattingService.cs (5)
67if (token.IsKind(SyntaxKind.CloseParenToken) && !token.Parent.IsKind(SyntaxKind.UsingStatement)) 75if (token.IsKind(SyntaxKind.ColonToken) && !(token.Parent.IsKind(SyntaxKind.LabeledStatement) || token.Parent is SwitchLabelSyntax)) 341if (currentToken.Parent != null) 343var currentTokenParentParent = currentToken.Parent.Parent;
FormattingHelpers.cs (46)
77=> token.IsOpenParenInParameterList() && token.Parent.IsParentKind(SyntaxKind.ConversionOperatorDeclaration); 80=> token.IsOpenParenInParameterList() && token.Parent.IsParentKind(SyntaxKind.OperatorDeclaration); 83=> token.Kind() == SyntaxKind.OpenParenToken && token.Parent.IsKind(SyntaxKind.ParameterList); 86=> token.Kind() == SyntaxKind.CloseParenToken && token.Parent.IsKind(SyntaxKind.ParameterList); 103if (token.Parent is (kind: SyntaxKind.ArgumentList or SyntaxKind.AttributeArgumentList)) 109if (token.Parent.IsKind(SyntaxKind.PositionalPatternClause) && token.Parent.Parent.IsKind(SyntaxKind.RecursivePattern)) 112return token.Parent.Parent.GetFirstToken() != token; 119=> token.Kind() == SyntaxKind.ColonToken && token.Parent.IsKind(SyntaxKind.BaseList); 122=> token.Kind() == SyntaxKind.CommaToken && (token.Parent.IsAnyArgumentList() || token.Parent.IsKind(SyntaxKind.ParameterList) || token.Parent.IsKind(SyntaxKind.FunctionPointerParameterList)); 125=> token.Kind() == SyntaxKind.OpenParenToken && token.Parent.IsKind(SyntaxKind.ParameterList) && token.Parent.Parent.IsKind(SyntaxKind.ParenthesizedLambdaExpression); 151token.Parent is ForStatementSyntax forStatement && 162if (token.Parent is not StatementSyntax statement || 178return token.Parent is ExpressionSyntax || token.Parent.IsKind(SyntaxKind.PropertyPatternClause); 188if (token.Parent is not BlockSyntax block || 210token.Parent.IsKind(SyntaxKind.EnumDeclaration); 216token.Parent.IsAnyArgumentList(); 221if (token.Parent is not ParenthesizedExpressionSyntax parenthesizedExpression) 231var parent = token.Parent ?? throw new ArgumentNullException(nameof(token)); 278token.Parent.IsKind(SyntaxKind.EqualsValueClause) && 279token.Parent.Parent.IsKind(SyntaxKind.PropertyDeclaration); 284if (token.Parent is not StatementSyntax statement) 305=> token.IsDotInMemberAccess() || (token.Kind() == SyntaxKind.DotToken && token.Parent.IsKind(SyntaxKind.QualifiedName)); 309if (token.Parent is not MemberAccessExpressionSyntax memberAccess) 321return token.Parent is (kind: SyntaxKind.TypeParameterList or SyntaxKind.TypeArgumentList); 329((token.Parent is InitializerExpressionSyntax) || 330(token.Parent is AnonymousObjectCreationExpressionSyntax)); 334=> token.Kind() == SyntaxKind.ColonToken && token.Parent is CasePatternSwitchLabelSyntax; 337=> token.Kind() == SyntaxKind.ColonToken && token.Parent.IsKind(SyntaxKind.SwitchExpressionArm); 340=> token.Kind() == SyntaxKind.CommaToken && token.Parent.IsKind(SyntaxKind.SwitchExpression); 343=> token.Kind() == SyntaxKind.CommaToken && token.Parent.IsKind(SyntaxKind.PropertyPatternClause); 348token.Parent is LabeledStatementSyntax labeledStatement && 358token.Parent is LabeledStatementSyntax labeledStatement && 376token.Parent is FromClauseSyntax fromClause && 383token.Parent?.Parent is QueryExpressionSyntax queryExpression && 476if (token.Parent == null) 481return token.Parent.Parent is LabeledStatementSyntax; 515return token.Parent is PrefixUnaryExpressionSyntax; 519=> currentToken.Parent.IsKind(SyntaxKind.Interpolation); 527currentToken.Parent is ParenthesizedVariableDesignationSyntax && 528currentToken.Parent.Parent is DeclarationExpressionSyntax; 537currentToken.Parent.IsKind(SyntaxKind.TupleExpression);
FormattingRangeHelper.cs (15)
42var (_, closeBrace) = previousToken.Parent.GetBracePair(); 90var parent = endToken.Parent; 114var parent = endToken.Parent; 171var parent = endToken.Parent; 271var parent = endToken.Parent; 338RoslynDebug.AssertNotNull(previousToken.Parent?.Parent); 339var labelNode = previousToken.Parent.Parent; 349(previousToken.Parent.IsKind(SyntaxKind.Block) || 350previousToken.Parent is TypeDeclarationSyntax || 351previousToken.Parent is NamespaceDeclarationSyntax); 410token.Parent is SwitchLabelSyntax switchLabel && 436RoslynDebug.AssertNotNull(token.Parent); 440if (token.Parent.Kind() is SyntaxKind.Block or 443return token.Parent.Parent as MemberDeclarationSyntax; 447return token.Parent.FirstAncestorOrSelf<MemberDeclarationSyntax>();
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxNodeExtensions.cs\SyntaxNodeExtensions.cs (2)
1051{ Parent: NameEqualsSyntax { Parent: UsingDirectiveSyntax _ } } => true, 1052{ Parent: IdentifierNameSyntax { Parent: UsingDirectiveSyntax _ } } => true,
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxTokenExtensions.cs\SyntaxTokenExtensions.cs (2)
47token.Parent.IsKind(SyntaxKind.ObjectInitializerExpression); 51=> token.IsKind(SyntaxKind.OpenBraceToken) && token.Parent.IsKind(SyntaxKind.AccessorList);
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxTreeExtensions.cs\SyntaxTreeExtensions.cs (1)
199if (token.Parent is XmlCrefAttributeSyntax attribute)
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTokenExtensions.cs\SyntaxTokenExtensions.cs (51)
112case SyntaxKind.OpenBraceToken when token.Parent.IsKind(SyntaxKind.Block): 121if (token.Parent.IsKind(SyntaxKind.Block)) 123if (token.Parent.Parent is StatementSyntax) 132if (!token.Parent.IsParentKind(SyntaxKind.TryStatement) && 133!token.Parent.IsParentKind(SyntaxKind.DoStatement)) 139token.Parent.IsParentKind(SyntaxKind.ElseClause) || 140token.Parent.IsParentKind(SyntaxKind.FinallyClause) || 141token.Parent.IsParentKind(SyntaxKind.CatchClause) || 142token.Parent.IsParentKind(SyntaxKind.SwitchSection)) 148if (token.Parent.IsKind(SyntaxKind.SwitchStatement)) 156return token.Parent is (kind: SyntaxKind.CaseSwitchLabel or SyntaxKind.DefaultSwitchLabel or SyntaxKind.CasePatternSwitchLabel or SyntaxKind.LabeledStatement); 158case SyntaxKind.DoKeyword when token.Parent.IsKind(SyntaxKind.DoStatement): 162var parent = token.Parent; 173return token.Parent.IsKind(SyntaxKind.ElseClause); 176if (token.Parent.IsKind(SyntaxKind.AttributeList)) 179var container = token.Parent.Parent; 224if (token.Parent is FileScopedNamespaceDeclarationSyntax namespaceDeclaration && namespaceDeclaration.SemicolonToken == token) 258if (token.Parent.IsKind(SyntaxKind.AttributeList)) 260var container = token.Parent.Parent; 273if (token.Parent.IsKind(SyntaxKind.CastExpression)) 278if (token.Parent is ParenthesizedExpressionSyntax parenExpr) 333targetToken.Parent.IsKind(SyntaxKind.ParenthesizedExpression)) 339if (targetToken.Parent is PrefixUnaryExpressionSyntax prefix) 346if (targetToken.Parent is BinaryExpressionSyntax binary) 395targetToken.Parent.IsKind(SyntaxKind.SwitchStatement)) 402if (targetToken.Parent is (kind: SyntaxKind.CaseSwitchLabel or SyntaxKind.DefaultSwitchLabel or SyntaxKind.CasePatternSwitchLabel)) 430targetToken.Parent is (kind: SyntaxKind.CrefBracketedParameterList or SyntaxKind.CrefParameterList); 449targetToken.Parent.IsKind(SyntaxKind.NameColon) && 450targetToken.Parent.Parent.IsKind(SyntaxKind.Argument) && 451targetToken.Parent.Parent.Parent.IsKind(SyntaxKind.ArgumentList)) 453var owner = targetToken.Parent.Parent.Parent.Parent; 466if (targetToken.Parent.IsKind(SyntaxKind.ArgumentList)) 468if (targetToken.Parent.IsParentKind(SyntaxKind.ObjectCreationExpression) || 469targetToken.Parent.IsParentKind(SyntaxKind.BaseConstructorInitializer) || 470targetToken.Parent.IsParentKind(SyntaxKind.ThisConstructorInitializer)) 478if (targetToken.Parent.IsParentKind(SyntaxKind.InvocationExpression) && !targetToken.IsInvocationOfVarExpression()) 578targetToken.Parent.IsKind(SyntaxKind.AccessorList)) 586targetToken.Parent.IsKind(SyntaxKind.Block) && 587targetToken.Parent.Parent is AccessorDeclarationSyntax) 594targetToken.Parent is AccessorDeclarationSyntax) 601targetToken.Parent.IsKind(SyntaxKind.AttributeList) && 602targetToken.Parent.Parent is AccessorDeclarationSyntax) 634IsGenericInterfaceOrDelegateTypeParameterList(targetToken.Parent!)) 640IsGenericInterfaceOrDelegateTypeParameterList(targetToken.Parent!)) 646targetToken.Parent.IsKind(SyntaxKind.AttributeList) && 647targetToken.Parent.Parent.IsKind(SyntaxKind.TypeParameter) && 648IsGenericInterfaceOrDelegateTypeParameterList(targetToken.Parent.Parent.Parent)) 658if (token.Kind() == SyntaxKind.CommaToken && token.Parent is BaseArgumentListSyntax) 660var argumentList = (BaseArgumentListSyntax)token.Parent; 684if (token.Parent is not MemberAccessExpressionSyntax memberAccessExpression) 694=> token.Parent is IdentifierNameSyntax typedParent &&
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTreeExtensions.cs\SyntaxTreeExtensions.cs (175)
36token.Parent.IsKind(SyntaxKind.AttributeList)) 44token.Parent.IsKind(SyntaxKind.AttributeList)) 52token.Parent.IsKind(SyntaxKind.AttributeTargetSpecifier)) 59if (token.Parent.IsKind(SyntaxKind.QualifiedName) && 60token.Parent.IsParentKind(SyntaxKind.Attribute)) 67if (token.Parent.IsKind(SyntaxKind.AliasQualifiedName) && 68token.Parent.IsParentKind(SyntaxKind.Attribute)) 89var parent = token.Parent; 167if (token.Parent is BaseTypeDeclarationSyntax) 178if (token.Parent is MemberDeclarationSyntax && 179token.Parent.Parent is BaseTypeDeclarationSyntax) 195if (token.Parent is BaseTypeDeclarationSyntax && 196token.Parent.Parent is BaseTypeDeclarationSyntax) 201else if (token.Parent is AccessorListSyntax) 207token.Parent.IsKind(SyntaxKind.Block) && 208token.Parent.Parent is MemberDeclarationSyntax) 220token.Parent.IsKind(SyntaxKind.AttributeList)) 228var container = token.Parent.Parent?.Parent; 297var member = token.Parent; 358if (token.Kind() == SyntaxKind.CloseBracketToken && token.Parent is AttributeListSyntax) 359return syntaxTree.IsLocalFunctionDeclarationContext(token.Parent.SpanStart, validModifiers, cancellationToken); 439if (token.IsKind(SyntaxKind.OpenBraceToken) && token.Parent is NamespaceDeclarationSyntax or TypeDeclarationSyntax) 456if (token.Parent is (kind: SyntaxKind.ExternAliasDirective or SyntaxKind.UsingDirective)) 460else if (token.Parent is MemberDeclarationSyntax) 478if (token.Parent is BaseTypeDeclarationSyntax) 482else if (token.Parent.IsKind(SyntaxKind.NamespaceDeclaration)) 486else if (token.Parent is AccessorListSyntax) 491token.Parent.IsKind(SyntaxKind.Block) && 492token.Parent.Parent is MemberDeclarationSyntax) 507token.Parent.IsKind(SyntaxKind.AttributeList)) 510if (token.Parent.IsParentKind(SyntaxKind.CompilationUnit)) 519var container = token.Parent?.Parent?.Parent; 596var container = token.Parent?.Parent; 778if (token.Parent is BaseListSyntax { Parent: not EnumDeclarationSyntax }) 824token.Parent.IsKind(SyntaxKind.TypeParameterConstraintClause)) 831token.Parent.IsKind(SyntaxKind.IdentifierName) && 832token.Parent.IsParentKind(SyntaxKind.SimpleBaseType) && 833token.Parent.Parent.IsParentKind(SyntaxKind.BaseList)) 877token.Parent is TypeParameterConstraintClauseSyntax constraintClause) 895if (token.IsKind(SyntaxKind.OpenParenToken) && token.Parent.IsKind(SyntaxKind.TypeOfExpression)) 907if (token.IsKind(SyntaxKind.OpenParenToken) && token.Parent.IsKind(SyntaxKind.DefaultExpression)) 920if (token.IsKind(SyntaxKind.OpenParenToken) && token.Parent.IsKind(SyntaxKind.SizeOfExpression)) 941return token.Parent.IsKind(SyntaxKind.FunctionPointerParameterList); 947{ Parent.RawKind: (int)SyntaxKind.FunctionPointerParameter } => true, 949{ Parent: TypeSyntax { Parent.RawKind: (int)SyntaxKind.FunctionPointerParameter } } => true, 955=> targetToken.Parent.IsKind(SyntaxKind.TypeParameterConstraintClause) && 977if (token.Parent is TypeArgumentListSyntax) 988if (nameToken.Parent is not NameSyntax name) 1049token.Parent.IsDelegateOrConstructorOrLocalFunctionOrMethodOrOperatorParameterList(includeOperators)) 1055if (token.IsKind(SyntaxKind.LessThanToken) && token.Parent.IsKind(SyntaxKind.FunctionPointerParameterList)) 1062token.Parent is ParameterListSyntax parameterList && 1072token.Parent is FunctionPointerParameterListSyntax funcPtrParamList) 1081token.Parent.IsKind(SyntaxKind.AttributeList) && 1082token.Parent.Parent is ParameterSyntax parameter2 && 1093parameter3 = token.Parent as ParameterSyntax; 1096else if (token.IsKind(SyntaxKind.IdentifierToken) && token.Text == "scoped" && token.Parent is IdentifierNameSyntax scopedIdentifierName) 1134return token.Parent.IsKind(SyntaxKind.BracketedParameterList); 1147token.Parent.IsKind(SyntaxKind.DelegateDeclaration)) 1188if (token.Parent is (kind: SyntaxKind.ParameterList or SyntaxKind.BracketedParameterList)) 1199var method = tokenOnLeftOfPosition.Parent.GetAncestorOrThis<MethodDeclarationSyntax>(); 1216if (token.Parent.IsKind(SyntaxKind.ParameterList) && 1217token.Parent.IsParentKind(SyntaxKind.ParenthesizedLambdaExpression)) 1233if (token.Parent is (kind: SyntaxKind.ParenthesizedExpression or SyntaxKind.TupleExpression or SyntaxKind.CastExpression)) 1249parent = token.Parent; 1251else if (token.IsKind(SyntaxKind.ScopedKeyword) && token.Parent.IsKind(SyntaxKind.Parameter)) 1253parent = token.Parent.Parent; 1255else if (token.IsKind(SyntaxKind.IdentifierToken) && token.Text == "scoped" && token.Parent is IdentifierNameSyntax scopedIdentifierName && scopedIdentifierName.Parent.IsKind(SyntaxKind.Parameter)) 1308if (leftToken.Parent is (kind: 1313var possibleCommaOrParen = FindTokenOnLeftOfNode(leftToken.Parent); 1325var possibleCommaOrParen = FindTokenOnLeftOfNode(leftToken.Parent!); 1335leftToken.Parent.IsKind(SyntaxKind.IdentifierName) && 1336leftToken.Parent.Parent is (kind: SyntaxKind.QualifiedName or SyntaxKind.SimpleMemberAccessExpression)) 1338var possibleCommaOrParen = FindTokenOnLeftOfNode(leftToken.Parent.Parent); 1354if (leftToken.Parent is ParenthesizedExpressionSyntax parenthesizedExpression) 1362if (leftToken.Parent.IsKind(SyntaxKind.ParenthesizedPattern)) 1377if (leftToken.Kind() is SyntaxKind.OpenBraceToken or SyntaxKind.CommaToken && leftToken.Parent.IsKind(SyntaxKind.SwitchExpression)) 1384if (leftToken.Kind() is SyntaxKind.OpenParenToken or SyntaxKind.CommaToken && leftToken.Parent.IsKind(SyntaxKind.PositionalPatternClause)) 1391if (leftToken.Kind() is SyntaxKind.OpenBracketToken or SyntaxKind.CommaToken && leftToken.Parent.IsKind(SyntaxKind.ListPattern)) 1398if (leftToken.IsKind(SyntaxKind.DotDotToken) && leftToken.Parent.IsKind(SyntaxKind.SlicePattern)) 1406if (leftToken.IsKind(SyntaxKind.ColonToken) && leftToken.Parent is (kind: SyntaxKind.NameColon or SyntaxKind.ExpressionColon) && 1407leftToken.Parent.IsParentKind(SyntaxKind.Subpattern)) 1419return leftToken.Parent is BinaryPatternSyntax || 1420leftToken.Parent is SingleVariableDesignationSyntax { Parent: DeclarationPatternSyntax }; 1424if (leftToken.IsKind(SyntaxKind.NotKeyword) && leftToken.Parent.IsKind(SyntaxKind.NotPattern)) 1434leftToken.Parent.IsKind(SyntaxKind.RelationalPattern)) 1480if (lastTokenInPattern.Parent is SingleVariableDesignationSyntax variableDesignationSyntax && 1481originalLeftToken.Parent == variableDesignationSyntax) 1527SyntaxNode? node = leftToken.Parent as ExpressionSyntax; 1557if (possibleCommaOrParen.Parent is (kind: 1567if (possibleCommaOrParen.Parent.IsKind(SyntaxKind.ParameterList) && 1568possibleCommaOrParen.Parent?.Parent is ParenthesizedLambdaExpressionSyntax parenthesizedLambda) 1592if (leftToken.Parent.IsKind(SyntaxKind.ParenthesizedVariableDesignation) || 1593leftToken.Parent.IsParentKind(SyntaxKind.ParenthesizedVariableDesignation)) 1613if (leftToken.IsKind(SyntaxKind.OpenParenToken) && leftToken.Parent.IsKind(SyntaxKind.ParenthesizedExpression)) 1615if (IsPossibleVarDeconstructionOpenParenOrComma(FindTokenOnLeftOfNode(leftToken.Parent))) 1623if (leftToken.Kind() is SyntaxKind.OpenParenToken or SyntaxKind.CommaToken && leftToken.Parent.IsKind(SyntaxKind.TupleExpression)) 1625if (IsPossibleVarDeconstructionOpenParenOrComma(FindTokenOnLeftOfNode(leftToken.Parent))) 1635var outer = UnwrapPossibleTuple(leftToken.Parent!); 1676leftToken.Parent.IsKind(SyntaxKind.ArgumentList) && 1677leftToken.Parent?.Parent is InvocationExpressionSyntax invocation) 1770token.Parent.IsKind(SyntaxKind.LocalDeclarationStatement)) 1781var parent = token.Parent; 1802token.Parent is ArgumentSyntax argument && 1827token.Parent is LocalDeclarationStatementSyntax) 1853if (token.IsKind(SyntaxKind.IdentifierToken) && token.Text == "scoped" && token.Parent.IsKind(SyntaxKind.IdentifierName) && token.Parent.Parent is VariableDeclarationSyntax or ExpressionStatementSyntax or IncompleteMemberSyntax) 1859if (token.IsKind(SyntaxKind.ScopedKeyword) && token.Parent is IncompleteMemberSyntax) 2040token.Parent.IsKind(SyntaxKind.CastExpression)) 2060token.Parent.IsKind(SyntaxKind.GotoCaseStatement)) 2066token.Parent is EqualsValueClauseSyntax equalsValue) 2101if (token.Parent.IsKind(SyntaxKind.AttributeArgumentList) && 2110token.Parent.IsKind(SyntaxKind.NameColon) && 2111token.Parent.IsParentKind(SyntaxKind.AttributeArgument)) 2118token.Parent.IsKind(SyntaxKind.NameEquals) && 2119token.Parent.IsParentKind(SyntaxKind.AttributeArgument)) 2199if (token.Parent.IsKind(SyntaxKind.NameEquals) && 2200token.Parent.IsParentKind(SyntaxKind.UsingDirective)) 2240if (token.Parent.IsKind(SyntaxKind.ParenthesizedExpression)) 2249if (token.Parent is CastExpressionSyntax castExpression && 2260if (token.Parent is PrefixUnaryExpressionSyntax prefix) 2273if (token.Parent is AwaitExpressionSyntax awaitExpression) 2297if (token.Parent is BinaryExpressionSyntax binary) 2336if (previousToken.Parent.IsKind(SyntaxKind.PointerType) || 2337previousToken.Parent.IsKind(SyntaxKind.NullableType)) 2339var type = previousToken.Parent as TypeSyntax; 2363if (token.Parent.IsKind(SyntaxKind.ArrayRankSpecifier)) 2372token.Parent.IsKind(SyntaxKind.RangeExpression) && 2380token.Parent is ConditionalExpressionSyntax conditionalExpression) 2389token.Parent.IsKind(SyntaxKind.ConditionalExpression)) 2399if (token.Parent is (kind: SyntaxKind.TypeOfExpression or SyntaxKind.DefaultExpression or SyntaxKind.SizeOfExpression)) 2423if (token.Parent is (kind: SyntaxKind.ArgumentList or SyntaxKind.BracketedArgumentList or SyntaxKind.TupleExpression)) 2436if (token.Parent.IsKind(SyntaxKind.AttributeArgumentList)) 2451if (token.Parent.IsKind(SyntaxKind.Argument)) 2455else if (token.Parent.IsKind(SyntaxKind.RefExpression)) 2459if (token.Parent.IsParentKind(SyntaxKind.ParenthesizedExpression)) 2470token.Parent.IsKind(SyntaxKind.NameColon) && 2471token.Parent.IsParentKind(SyntaxKind.Argument)) 2487if (token.Parent is InitializerExpressionSyntax) 2491if (token.Parent.IsKind(SyntaxKind.ObjectInitializerExpression) && token.IsKind(SyntaxKind.OpenBraceToken)) 2506token.Parent?.Parent is ObjectCreationExpressionSyntax objectCreation) 2522token.Parent is ForStatementSyntax forStatement) 2533token.Parent is ForStatementSyntax forStatement2 && 2542token.Parent.IsKind(SyntaxKind.ForStatement)) 2553if (token.Parent is (kind: 2568if (token.Parent.IsKind(SyntaxKind.JoinClause)) 2576token.Parent.IsKind(SyntaxKind.WhereClause)) 2586if (token.Parent.IsKind(SyntaxKind.OrderByClause)) 2594token.Parent.IsKind(SyntaxKind.SelectClause)) 2604if (token.Parent.IsKind(SyntaxKind.GroupClause)) 2638if (token.IsKind(SyntaxKind.OpenParenToken) && token.Parent.IsKind(SyntaxKind.UsingStatement)) 2686if (token.IsKind(SyntaxKind.WhenKeyword) && token.Parent.IsKind(SyntaxKind.WhenClause)) 2705if (token.Parent.IsKind(SyntaxKind.AnonymousObjectCreationExpression)) 2715token.Parent.IsKind(SyntaxKind.ListPattern)) 2728return token.Parent is InterpolationSyntax interpolation 2736=> token.Parent?.Parent is InvocationExpressionSyntax invocation && 2750if (token.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression)) 2752var parentMemberAccess = token.Parent; 2766if (token.Parent.IsKind(SyntaxKind.QualifiedName)) 2768var parentQualifiedName = token.Parent; 2785if (token.Parent.IsKind(SyntaxKind.ArgumentList) && 2786token.Parent.Parent is InvocationExpressionSyntax invocationExpression && 2863token.Parent.IsKind(SyntaxKind.IdentifierName) && 2864token.Parent.Parent is (kind: SyntaxKind.ObjectInitializerExpression or SyntaxKind.CollectionInitializerExpression)) 2871token.Parent.IsKind(SyntaxKind.IdentifierName)) 2873if (token.Parent.Parent is ArgumentSyntax { RefOrOutKeyword.RawKind: (int)SyntaxKind.OutKeyword }) 2980token.Parent.IsKind(SyntaxKind.CatchDeclaration)) 2999token.Parent.IsKind(SyntaxKind.BaseList) && 3000token.Parent.IsParentKind(SyntaxKind.EnumDeclaration); 3015if (token.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression)) 3017var memberAccess = (MemberAccessExpressionSyntax)token.Parent; 3020else if (token.Parent is QualifiedNameSyntax qualifiedName && 3021token.Parent?.Parent is BinaryExpressionSyntax(SyntaxKind.IsExpression) binaryExpression && 3027else if (token.Parent is QualifiedNameSyntax qualifiedName1 && 3028token.Parent?.Parent is DeclarationPatternSyntax declarationExpression && 3061targetToken.Parent is FunctionPointerTypeSyntax functionPointerType &&
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.cs\ITypeSymbolExtensions.cs (1)
144var namespaceUsings = root.FindToken(position).Parent!.GetAncestors<BaseNamespaceDeclarationSyntax>().SelectMany(n => n.Usings);
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\SyntaxTreeExtensions.cs\SyntaxTreeExtensions.cs (1)
172return token.Parent is GenericNameSyntax genericName && genericName.TypeArgumentList != null &&
NewLineUserSettingFormattingRule.cs (23)
78RoslynDebug.AssertNotNull(currentToken.Parent); 85&& previousToken.Parent!.Parent == currentToken.Parent.Parent) 112if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent is BaseTypeDeclarationSyntax or NamespaceDeclarationSyntax) 121if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent.IsKind(SyntaxKind.AnonymousObjectCreationExpression)) 131currentToken.Parent.Kind() is 145var currentTokenParentParent = currentToken.Parent.Parent; 197if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent.IsKind(SyntaxKind.SwitchExpression)) 206if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && IsControlBlock(currentToken.Parent)) 219RoslynDebug.AssertNotNull(currentToken.Parent); 226if (previousToken.IsKind(SyntaxKind.CommaToken) && previousToken.Parent.IsKind(SyntaxKind.ObjectInitializerExpression)) 240if (previousToken.IsKind(SyntaxKind.CommaToken) && previousToken.Parent.IsKind(SyntaxKind.AnonymousObjectCreationExpression)) 257|| previousToken.Parent!.Parent != currentToken.Parent.Parent) 294if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent is BaseTypeDeclarationSyntax or NamespaceDeclarationSyntax) 307if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent.IsKind(SyntaxKind.AnonymousObjectCreationExpression)) 324currentToken.Parent.Kind() is SyntaxKind.ObjectInitializerExpression or SyntaxKind.CollectionInitializerExpression or SyntaxKind.WithInitializerExpression or SyntaxKind.PropertyPatternClause) 341currentToken.Parent.Kind() is SyntaxKind.ArrayInitializerExpression or SyntaxKind.ImplicitArrayCreationExpression) 346var currentTokenParentParent = currentToken.Parent.Parent; 419if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && currentToken.Parent.IsKind(SyntaxKind.SwitchExpression)) 432if (currentToken.IsKind(SyntaxKind.OpenBraceToken) && IsControlBlock(currentToken.Parent)) 448&& (previousToken.Parent is StatementSyntax && !previousToken.Parent.IsKind(SyntaxKind.ForStatement))
Recommendations\CSharpRecommendationServiceRunner.cs (1)
192token.Parent.IsKind(SyntaxKind.UsingDirective) &&
Rename\CSharpRenameRewriterLanguageService.cs (20)
227if (newToken.Parent.IsKind(SyntaxKind.XmlName)) 265&& IsNameConflictWithProperty("get", token.Parent as AccessorDeclarationSyntax); 269&& IsNameConflictWithProperty("set", token.Parent as AccessorDeclarationSyntax); 274&& IsNameConflictWithProperty("set", token.Parent as AccessorDeclarationSyntax); 284token.Parent.IsKind(SyntaxKind.DestructorDeclaration); 407var isMemberGroupReference = _semanticFactsService.IsInsideNameOfExpression(_semanticModel, token.Parent, _cancellationToken); 545if (token.Parent is SimpleNameSyntax && 547token.Parent.Parent is (kind: SyntaxKind.AliasQualifiedName or SyntaxKind.QualifiedCref or SyntaxKind.QualifiedName)) 549var symbol = _speculativeModel.GetSymbolInfo(token.Parent, _cancellationToken).Symbol; 574var parent = oldToken.Parent!; 715else if (newToken.IsKind(SyntaxKind.IdentifierToken) && newToken.Parent.IsKind(SyntaxKind.XmlName) && newToken.ValueText == _originalText) 753if (token.Parent is ExpressionSyntax(SyntaxKind.IdentifierName) expression && 754token.Parent.IsParentKind(SyntaxKind.InvocationExpression) && 878var currentUsing = (UsingDirectiveSyntax)token.Parent!.Parent!.Parent!; 880var namespaceDecl = token.Parent.Ancestors().OfType<BaseNamespaceDeclarationSyntax>().FirstOrDefault(); 906var currentTypeParameter = token.Parent!; 1015return ImmutableArray.Create(((CommonForEachStatementSyntax)token.Parent!).Expression.GetLocation()); 1020if (token.Parent.IsInDeconstructionLeft(out var deconstructionLeft)) 1187if (token.Parent is TypeSyntax && token.Parent.Parent is TypeSyntax)
SemanticModelExtensions.cs (3)
27if (name.Parent is ExpressionSyntax expression) 44if (name.Parent is ExpressionSyntax expression) 135switch (token.Parent)
Simplification\CSharpSimplificationService.cs (2)
81Contract.ThrowIfNull(token.Parent); 87var rewrittenToken = TryEscapeIdentifierToken(rewriter.VisitToken(token), token.Parent).WithAdditionalAnnotations(Simplifier.Annotation);
Simplification\Reducers\CSharpEscapingReducer.cs (1)
52var parent = token.Parent;
Simplification\Simplifiers\AbstractCSharpSimplifier.cs (2)
369return token.Parent; 374return token.Parent;
SpacingFormattingRule.cs (29)
47RoslynDebug.Assert(previousToken.Parent != null && currentToken.Parent != null); 51var previousParentKind = previousToken.Parent.Kind(); 52var currentParentKind = currentToken.Parent.Kind(); 94if (previousToken.Parent.IsKind(SyntaxKind.OperatorDeclaration) && currentToken.IsOpenParenInParameterListOfAOperationDeclaration()) 165if ((previousToken.Parent.Kind() is SyntaxKind.ParenthesizedExpression or SyntaxKind.ParenthesizedPattern && previousKind == SyntaxKind.OpenParenToken) || 166(currentToken.Parent.Kind() is SyntaxKind.ParenthesizedExpression or SyntaxKind.ParenthesizedPattern && currentKind == SyntaxKind.CloseParenToken)) 180&& IsEmptyForStatement((ForStatementSyntax)previousToken.Parent!)) 210if (currentKind == SyntaxKind.OpenBracketToken && currentToken.Parent.IsKind(SyntaxKind.ListPattern)) 251if (previousKind == SyntaxKind.CloseBracketToken && previousToken.Parent.IsKind(SyntaxKind.AttributeList)) 255currentToken.Parent.IsKind(SyntaxKind.AttributeList)) 327if (currentToken.Parent is BinaryExpressionSyntax || 328previousToken.Parent is BinaryExpressionSyntax || 329currentToken.Parent is AssignmentExpressionSyntax || 330previousToken.Parent is AssignmentExpressionSyntax || 331currentToken.Parent.Kind() is SyntaxKind.AndPattern or SyntaxKind.OrPattern or SyntaxKind.RelationalPattern || 332previousToken.Parent.Kind() is SyntaxKind.AndPattern or SyntaxKind.OrPattern or SyntaxKind.RelationalPattern) 458if (previousToken.Parent.IsKind(SyntaxKind.NotPattern)) 487if ((currentKind == SyntaxKind.OpenBraceToken && currentToken.Parent is InterpolationSyntax) || 488(previousKind == SyntaxKind.CloseBraceToken && previousToken.Parent is InterpolationSyntax)) 494if (previousKind == SyntaxKind.OpenBraceToken && previousToken.Parent is InterpolationSyntax) 500if (currentKind == SyntaxKind.CloseBraceToken && currentToken.Parent is InterpolationSyntax interpolation) 511if ((previousKind == SyntaxKind.CommaToken && previousToken.Parent is InterpolationAlignmentClauseSyntax) || 512(currentKind == SyntaxKind.CommaToken && currentToken.Parent is InterpolationAlignmentClauseSyntax)) 518if ((previousKind == SyntaxKind.ColonToken && previousToken.Parent is InterpolationFormatClauseSyntax) || 519(currentKind == SyntaxKind.ColonToken && currentToken.Parent is InterpolationFormatClauseSyntax)) 539var rangeExpression = (RangeExpressionSyntax)previousToken.Parent!; 550var rangeExpression = (RangeExpressionSyntax)currentToken.Parent!; 603=> token.Parent is (kind: SyntaxKind.ArrayRankSpecifier or SyntaxKind.BracketedArgumentList or SyntaxKind.BracketedParameterList or SyntaxKind.ImplicitArrayCreationExpression or SyntaxKind.ListPattern);
StructuredTriviaFormattingRule.cs (4)
16if (previousToken.Parent is StructuredTriviaSyntax || currentToken.Parent is StructuredTriviaSyntax) 26if (previousToken.Parent is StructuredTriviaSyntax || currentToken.Parent is StructuredTriviaSyntax)
TokenBasedFormattingRule.cs (29)
168if (previousToken.Kind() == SyntaxKind.CloseParenToken && previousToken.Parent.IsEmbeddedStatementOwnerWithCloseParen()) 173if (previousToken.Kind() == SyntaxKind.DoKeyword && previousToken.Parent.IsKind(SyntaxKind.DoStatement)) 199if (previousToken.Kind() == SyntaxKind.CloseBracketToken && previousToken.Parent is AttributeListSyntax) 201var attributeOwner = previousToken.Parent?.Parent; 220if (previousToken.Parent is not UsingDirectiveSyntax previousUsing) 227currentToken.Parent is UsingDirectiveSyntax currentUsing && 267if (previousToken.Kind() == SyntaxKind.CloseParenToken && previousToken.Parent.IsEmbeddedStatementOwnerWithCloseParen()) 286previousToken.Parent.IsKind(SyntaxKind.AttributeList) && 287previousToken.Parent.IsParentKind(SyntaxKind.Parameter)) 315var spaces = previousToken.Parent is (kind: 344if (previousToken.Kind() == SyntaxKind.CommaToken && currentToken.Kind() == SyntaxKind.OpenBracketToken && currentToken.Parent is AttributeListSyntax) 350if (previousToken.Kind() == SyntaxKind.CloseBracketToken && previousToken.Parent is AttributeListSyntax) 373!currentToken.Parent.IsKind(SyntaxKind.AttributeList) && 393if (currentToken.Parent is (kind: 407if (previousToken.Parent is CastExpressionSyntax && 414if (previousToken.Parent is (kind: SyntaxKind.TypeArgumentList or SyntaxKind.TypeParameterList or SyntaxKind.FunctionPointerType)) 431currentToken.Parent is (kind: SyntaxKind.TypeArgumentList or SyntaxKind.TypeParameterList)) 438previousToken.Parent is PrefixUnaryExpressionSyntax) 445currentToken.Parent is PostfixUnaryExpressionSyntax) 451if (currentToken.IsKind(SyntaxKind.QuestionToken) && currentToken.Parent.IsKind(SyntaxKind.ConditionalAccessExpression)) 458currentToken.Parent is (kind: SyntaxKind.NullableType or SyntaxKind.ClassConstraint)) 465previousToken.Parent?.IsParentKind(SyntaxKind.ArrayType) == true) 472currentToken.Parent.IsKind(SyntaxKind.SuppressNullableWarningExpression)) 478if (currentToken.Kind() == SyntaxKind.AsteriskToken && currentToken.Parent is PointerTypeSyntax) 484if (previousToken.Kind() == SyntaxKind.AsteriskToken && previousToken.Parent is PrefixUnaryExpressionSyntax) 519&& !previousToken.Parent.IsKind(SyntaxKind.SuppressNullableWarningExpression)) 525if (previousToken.Kind() == SyntaxKind.TildeToken && (previousToken.Parent is PrefixUnaryExpressionSyntax || previousToken.Parent is DestructorDeclarationSyntax)) 532previousToken.Parent is PrefixUnaryExpressionSyntax)
Microsoft.CodeAnalysis.EditorFeatures (1)
RenameTracking\RenameTrackingTaggerProvider.TrackingSession.cs (1)
177var semanticModel = await document.ReuseExistingSpeculativeModelAsync(token.Parent, _cancellationToken).ConfigureAwait(false);
Microsoft.CodeAnalysis.EditorFeatures.Cocoa (1)
NavigationCommandHandlers\FindImplementingMembersCommandHandler.cs (1)
105var parentTypeNode = documentToken.Parent?.Parent?.Parent?.Parent;
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (6)
Completion\AbstractCompletionProviderTests.cs (1)
98var node = (await document.GetSyntaxRootAsync()).FindToken(position).Parent;
EditAndContinue\EditAndContinueTestHelpers.cs (1)
358var result = root.FindToken(span.Start).Parent!;
QuickInfo\AbstractSemanticQuickInfoSourceTests.cs (1)
157var node = (await document.GetSyntaxRootAsync()).FindToken(position).Parent;
SignatureHelp\AbstractSignatureHelpProviderTests.cs (1)
124var node = (await document.GetSyntaxRootAsync()).FindToken(position).Parent;
Structure\AbstractSyntaxNodeStructureProviderTests.cs (1)
26var node = token.Parent.FirstAncestorOrSelf<TSyntaxNode>();
TypeInferrer\TypeInferrerTestBase.cs (1)
30var node = (await document.GetSyntaxRootAsync()).FindToken(position).Parent;
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (2)
CodeGeneration\CodeGenerationTests.cs (2)
923var symbol = token.Parent.AncestorsAndSelf() 934return token.Parent.AncestorsAndSelf().OfType<T>().FirstOrDefault(t => !fullSpanCoverage || t.Span.End >= destSpan.End);
Microsoft.CodeAnalysis.EditorFeatures.Wpf (1)
Peek\PeekHelpers.cs (1)
51var node = root.FindToken(identifierLocation.SourceSpan.Start).Parent;
Microsoft.CodeAnalysis.EditorFeatures2.UnitTests (8)
Diagnostics\AbstractCrossLanguageUserDiagnosticTest.vb (1)
239Return doc.GetSyntaxRootAsync().Result.FindToken(position).Parent
Expansion\AbstractExpansionTest.vb (2)
35Dim node = GetExpressionSyntaxWithSameSpan(root.FindToken(span.Start).Parent, span.End) 40Dim node = GetExpressionSyntaxWithSameSpan(root.FindToken(span.Start).Parent, span.End)
Simplification\AbstractSimplificationTests.vb (4)
81Dim node = root.FindToken(span.Start).Parent 93Dim node = root.FindToken(span.Start).Parent.Parent 99Dim node = root.FindToken(span.Start).Parent.Parent.Parent 105Dim node = GetExpressionSyntaxWithSameSpan(root.FindToken(span.Start).Parent, span.End)
Simplification\TypeNameSimplifierTest.vb (1)
4253Dim node = root.FindToken(span.Start).Parent.Parent
Microsoft.CodeAnalysis.Features (76)
AbstractConsecutiveStatementPlacementDiagnosticAnalyzer.cs (1)
83var nextTokenContainingStatement = nextToken.Parent?.FirstAncestorOrSelf<TExecutableStatementSyntax>();
AbstractMakeMethodSynchronousCodeFixProvider.cs (1)
201var nameNode = token.Parent;
AddImport\References\Reference.cs (1)
99var newContextNode = newRoot.GetAnnotatedTokens(annotation).First().Parent;
BraceCompletion\AbstractBraceCompletionService.cs (2)
145=> token.Parent == null || syntaxFacts.IsSkippedTokensTrivia(token.Parent);
BraceMatching\AbstractBraceMatcher.cs (1)
29var parent = token.Parent;
BraceMatching\AbstractDirectiveTriviaBraceMatcher.cs (1)
35if (token.Parent is not TDirectiveTriviaSyntax directive)
CodeLens\CodeLensReferencesService.cs (3)
175var node = token.Parent; 184node = parentTrivia.Token.Parent; 198node ??= token.Parent;
CodeRefactoringHelpers.cs (2)
86var beginningNode = node.FindToken(node.Span.Start).Parent; 87var endNode = node.FindToken(node.Span.End - 1).Parent;
CodeRefactorings\AbstractRefactoringHelpersService.cs (3)
282var leftNode = tokenToLeft.Parent; 316var rightNode = tokenToRightOrIn.Parent; 528var ancestor = token.Parent;
Completion\Providers\AbstractInternalsVisibleToCompletionProvider.cs (1)
91var node = token.Parent;
Completion\Providers\AbstractOverrideCompletionProvider.ItemGetter.cs (2)
73if (startToken.Parent == null) 76var semanticModel = await _document.ReuseExistingSpeculativeModelAsync(startToken.Parent, _cancellationToken).ConfigureAwait(false);
Completion\Providers\ImportCompletionProvider\AbstractExtensionMethodImportCompletionProvider.cs (1)
75var parentNode = syntaxContext.TargetToken.Parent;
Completion\Providers\ImportCompletionProvider\AbstractImportCompletionProvider.cs (1)
126var addImportContextNode = root.FindToken(completionItem.Span.Start, findInsideTrivia: true).Parent;
Completion\Providers\ImportCompletionProvider\AbstractTypeImportCompletionProvider.cs (1)
74var nodeToCheck = syntaxContext.LeftToken.Parent;
DocumentHighlighting\AbstractDocumentHighlightsService.cs (2)
321return syntaxFacts.IsGenericName(token.Parent) || syntaxFacts.IsIndexerMemberCref(token.Parent)
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (6)
851var oldEnclosingLambdaBody = FindEnclosingLambdaBody(oldBody, oldMember.FindToken(adjustedOldStatementStart).Parent!); 1330newStatementSyntax = bodyMatch.NewRoot.FindToken(newStatementSyntaxSpan.Start).Parent; 1573var ancestors = GetExceptionHandlingAncestors(token.Parent!, isNonLeaf); 2142currentSegment = (oldMappedSpan.Path, oldStartLine, lineDelta, oldTokensEnum.Current.Parent, newTokensEnum.Current.Parent); 5999=> root.FullSpan.Contains(position) ? root.FindToken(position).Parent : null;
EmbeddedLanguages\AbstractLanguageDetector.cs (6)
75if (syntaxFacts.IsLiteralExpression(token.Parent) && 76syntaxFacts.IsArgument(token.Parent.Parent)) 78options = GetOptionsFromSiblingArgument(token.Parent.Parent, semanticModel, cancellationToken) ?? 107return syntaxFacts.IsLiteralExpression(token.Parent) && 108syntaxFacts.IsArgument(token.Parent.Parent) && 109IsArgumentToWellKnownAPI(token, token.Parent.Parent, semanticModel, cancellationToken, out options);
EmbeddedLanguages\DateAndTime\LanguageServices\DateAndTimeLanguageDetector.cs (3)
84var interpolationFormatClause = token.Parent; 157=> syntaxFacts.IsLiteralExpression(token.Parent) && 158syntaxFacts.IsArgument(token.Parent!.Parent);
EmbeddedLanguages\EmbeddedLanguageDetector.cs (3)
82for (var node = token.Parent; node != null; node = node.Parent) 145var interpolationFormatClause = token.Parent; 191if (!syntaxFacts.IsLiteralExpression(token.Parent))
ExtractClass\ExtractClassWithDialogCodeAction.cs (1)
191: nodeOrToken.AsToken().Parent;
ExtractMethod\MethodExtractor.Analyzer.cs (2)
593return tokens.Any(t => semanticFacts.IsWrittenTo(model, t.Parent, CancellationToken.None)); 925if (tokens.All(t => !semanticFacts.IsWrittenTo(semanticModel, t.Parent, CancellationToken)))
ExtractMethod\MethodExtractor.Analyzer.SymbolMapBuilder.cs (1)
64_service.IsNameOfNamedArgument(token.Parent))
ExtractMethod\MethodExtractor.cs (1)
133var context = firstToken.Parent;
ExtractMethod\MethodExtractor.VariableSymbol.cs (1)
272var declStatement = identifier.Parent.FirstAncestorOrSelf<T>();
FindUsages\AbstractFindUsagesService_FindReferences.cs (4)
200if (token.Parent is null) 204var symbol = semanticModel.GetSymbolInfo(token.Parent, cancellationToken).Symbol ?? semanticModel.GetDeclaredSymbol(token.Parent, cancellationToken); 213var title = syntaxFacts.ConvertToSingleLine(token.Parent).ToString();
GenerateEqualsAndGetHashCodeFromMembers\FormatLargeBinaryExpressionRule.cs (1)
30if (_syntaxFacts.IsLogicalAndExpression(previousToken.Parent))
Highlighting\Keywords\AbstractKeywordHighlighter.cs (1)
41for (var parent = token.Parent; parent != null; parent = parent.Parent)
ImplementAbstractClass\AbstractImplementAbstractClassCodeFixProvider.cs (1)
37var classNode = token.Parent.GetAncestorOrThis<TClassNode>();
InlineTemporary\AbstractInlineTemporaryCodeRefactoringProvider.cs (1)
45.Select(loc => root.FindToken(loc.Location.SourceSpan.Start).Parent as TIdentifierNameSyntax)
MoveToNamespace\AbstractMoveToNamespaceService.cs (1)
80var node = token.Parent;
QuickInfo\CommonSemanticQuickInfoProvider.cs (2)
165if (syntaxFactsService.IsAttributeName(token.Parent!)) 221var typeInfo = semanticModel.GetTypeInfo(token.Parent!, cancellationToken);
RemoveUnusedVariable\AbstractRemoveUnusedVariableCodeFixProvider.cs (3)
77(int, Action) pair = (token.Parent.SpanStart, 79token.Parent, 80token.Parent.ReplaceToken(token, default(SyntaxToken)).WithAdditionalAnnotations(Formatter.Annotation)));
ReplaceDocCommentTextWithTag\AbstractReplaceDocCommentTextWithTagCodeRefactoringProvider.cs (1)
132for (var node = token.Parent; node != null; node = node.Parent)
ReplaceMethodWithProperty\ReplaceMethodWithPropertyCodeRefactoringProvider.cs (6)
255if (nameToken.Parent == null) 264editor.ReplaceNode(nameToken.Parent, nameToken.Parent.WithAdditionalAnnotations( 295if (nameToken.Parent == null) 304editor.ReplaceNode(nameToken.Parent, nameToken.Parent.WithAdditionalAnnotations(
ReplacePropertyWithMethods\ReplacePropertyWithMethodsCodeRefactoringProvider.cs (1)
265var parent = nameToken.Parent;
SignatureHelp\CommonSignatureHelpUtilities.cs (2)
126expression = token.Parent?.GetAncestorsOrThis<TSyntax>().SkipWhile(syntax => !isArgumentListToken(syntax, token)).FirstOrDefault(); 134expression = token.Parent?.AncestorsAndSelf()
SpellCheck\AbstractSpellCheckSpanService.cs (1)
88token.Parent?.RawKind == _syntaxKinds.InterpolatedStringText)
SplitOrMergeIfStatements\AbstractSplitIfStatementCodeRefactoringProvider.cs (2)
104syntaxFacts.GetPartsOfBinaryExpression(token.Parent, out var parentLeft, out _, out var parentRight); 107var right = rootExpression.ReplaceNode(token.Parent, parentRight);
UseAutoProperty\AbstractUseAutoPropertyCodeFixProvider.cs (1)
323var node = location.Location.FindToken(cancellationToken).Parent;
Wrapping\AbstractCodeActionComputer.cs (1)
231var nodeToFormat = tokens.SelectAsArray(t => t.Parent).FindInnermostCommonNode<SyntaxNode>();
Microsoft.CodeAnalysis.Test.Utilities (8)
Diagnostics\DiagnosticDescription.cs (2)
284if (!_syntaxPredicate(d._location.SourceTree.GetRoot().FindToken(_location.SourceSpan.Start, true).Parent)) 297if (!d._syntaxPredicate(_location.SourceTree.GetRoot().FindToken(_location.SourceSpan.Start, true).Parent))
Syntax\NodeHelpers.cs (6)
48return n.GetKind().Contains("Identifier") && n.Parent != null && n.Parent.GetKind().Contains("Name"); 54return kind.EndsWith("Keyword", StringComparison.Ordinal) || (kind.Contains("Identifier") && n.Parent != null && !n.Parent.GetKind().Contains("Name")); 95SyntaxNode retVal = node.Parent; 120SyntaxNode retVal = node.Token.Parent;
Microsoft.CodeAnalysis.UnitTests (2)
Diagnostics\SuppressMessageTargetSymbolResolverTests.cs (2)
1398Assert.NotNull(token.Parent); 1401var q = from node in token.Parent.AncestorsAndSelf()
Microsoft.CodeAnalysis.VisualBasic (78)
Binding\Binder_AnonymousTypes.vb (1)
168fieldNode = DirectCast(fieldNameToken.Parent, VisualBasicSyntaxNode)
Binding\Binder_Query.vb (1)
2156Debug.Assert(identifier.Parent Is rangeVar.Syntax)
Binding\Binder_Statements.vb (4)
823Dim labelParent = DirectCast(label.LabelName.Parent, VisualBasicSyntaxNode) 1478Dim identifierName = DirectCast(identifier.Parent, IdentifierNameSyntax) 3102VerifyLocalSymbolNameAndSetType(declaredOrInferredLocalOpt, type, DirectCast(identifier.Parent, VisualBasicSyntaxNode), identifier, diagnostics) 3376VerifyLocalSymbolNameAndSetType(declaredOrInferredLocalOpt, type, DirectCast(identifier.Parent, VisualBasicSyntaxNode), identifier, diagnostics)
Binding\Binder_Utils.vb (1)
1278Dim containingSyntax = modifierToken.Parent
Binding\BinderFactory.vb (2)
105node = DirectCast(DirectCast(node, StructuredTriviaSyntax).ParentTrivia.Token.Parent, VisualBasicSyntaxNode) 446Dim parent = DirectCast(token.Parent, VisualBasicSyntaxNode)
Binding\MemberSemanticModel.vb (2)
1274Return GetEnclosingBinderInternal(memberBinder, binderRoot, DirectCast(trivia.Token.Parent, VisualBasicSyntaxNode), position) 1986node = DirectCast(trivia.Token.Parent, VisualBasicSyntaxNode)
Compilation\DocumentationComments\UnprocessedDocumentationCommentFinder.vb (1)
140Dim parent As VisualBasicSyntaxNode = DirectCast(trivia.Token.Parent, VisualBasicSyntaxNode)
Compilation\SemanticModel.vb (6)
552node = DirectCast(node, StructuredTriviaSyntax).ParentTrivia.Token.Parent 621Dim trivia As StructuredTriviaSyntax = DirectCast(token.Parent, VisualBasicSyntaxNode).EnclosingStructuredTrivia 622If trivia Is Nothing OrElse Not IsInCrefOrNameAttributeInterior(DirectCast(token.Parent, VisualBasicSyntaxNode)) Then 640ElseIf token.Parent IsNot Nothing Then 641Debug.Assert(IsInTree(token.Parent)) 642Return DirectCast(token.Parent, VisualBasicSyntaxNode)
SymbolDisplay\SymbolDisplayVisitor_Minimal.vb (2)
13Dim startNode = token.Parent 154Dim startNode = token.Parent
Symbols\Source\LocalSymbol.vb (7)
537node = _identifierToken.Parent 541node = _identifierToken.Parent 545node = _identifierToken.Parent 558node = _identifierToken.Parent.Parent 562node = _identifierToken.Parent 569node = _identifierToken.Parent 588Return ImmutableArray.Create(_identifierToken.Parent.GetReference())
Symbols\Source\RangeVariableSymbol.vb (2)
179Return DirectCast(_identifierToken.Parent, VisualBasicSyntaxNode) 194parent = DirectCast(_identifierToken.Parent, VisualBasicSyntaxNode)
Symbols\Source\SourceLabelSymbol.vb (1)
62Dim parentNode = _labelName.Parent
Symbols\Source\SourcePropertySymbol.vb (1)
241DirectCast(identifier.Parent, VisualBasicSyntaxNode),
Symbols\Symbol.vb (1)
316Dim node As VisualBasicSyntaxNode = token.Parent.FirstAncestorOrSelf(Of TNode)()
Syntax\InternalSyntax\SyntaxNode.vb (1)
233Dim parent = trivia.Token.Parent
Syntax\StructuredTriviaSyntax.vb (1)
25Dim parent = DirectCast(trivia.Token.Parent, VisualBasicSyntaxNode)
Syntax\SyntaxFactory.vb (1)
1040Dim node = token.Parent
Syntax\SyntaxFacts.vb (12)
803If token.Parent Is Nothing Then Throw New ArgumentException("'token' must be parented by a SyntaxNode.") 806Dim parentKind = token.Parent.Kind 815Return TypeOf token.Parent Is BinaryExpressionSyntax 868Return CType(token.Parent, MemberAccessExpressionSyntax).Expression IsNot Nothing OrElse 869token.Parent.Parent.Kind = SyntaxKind.NamedFieldInitializer 889If CType(token.Parent, XmlMemberAccessExpressionSyntax).Base IsNot Nothing Then 952Return TypeOf token.Parent Is QueryClauseSyntax 974Dim n = TryCast(token.Parent.Parent, XmlNodeSyntax) 1042If token.Parent Is Nothing Then Throw New ArgumentException("'token' must be parented by a SyntaxNode.") 1045Dim parentKind = token.Parent.Kind 1100Return TypeOf token.Parent Is QueryClauseSyntax 1108Dim p As VisualBasicSyntaxNode = TryCast(token.Parent, QueryClauseSyntax)
Syntax\SyntaxNormalizer.vb (30)
210Dim tokenParent = trivia.Token.Parent 304(token.Parent IsNot Nothing AndAlso token.Parent.GetLastToken() = token) 419If token.Parent Is Nothing OrElse nextToken.Kind = SyntaxKind.None Then 423If nextToken.Parent.Kind = SyntaxKind.SingleLineFunctionLambdaExpression Then 433If TypeOf (token.Parent) Is UnaryExpressionSyntax AndAlso 440If TypeOf (token.Parent) Is BinaryExpressionSyntax OrElse 441TypeOf (nextToken.Parent) Is BinaryExpressionSyntax Then 462If (token.Kind = SyntaxKind.CommaToken AndAlso (nextToken.Kind = SyntaxKind.EmptyToken OrElse token.Parent.Kind = SyntaxKind.InterpolationAlignmentClause)) OrElse 470ElseIf nextToken.Kind = SyntaxKind.DotToken AndAlso nextToken.Parent.Kind <> SyntaxKind.NamedFieldInitializer Then 475If token.Parent.Kind = SyntaxKind.LabelStatement Then 479ElseIf nextToken.Parent.Kind = SyntaxKind.InterpolationFormatClause Then 498If SyntaxFacts.IsRelationalCaseClause(token.Parent.Kind()) OrElse 499SyntaxFacts.IsRelationalCaseClause(nextToken.Parent.Kind()) Then 506token.Parent.Kind = SyntaxKind.AttributeList) Then 521If token.Kind = SyntaxKind.ColonToken AndAlso token.Parent.Kind = SyntaxKind.XmlPrefix OrElse 522nextToken.Kind = SyntaxKind.ColonToken AndAlso nextToken.Parent.Kind = SyntaxKind.XmlPrefix Then 549If token.Kind = SyntaxKind.ColonToken AndAlso token.Parent.Kind = SyntaxKind.AttributeTarget OrElse 550nextToken.Kind = SyntaxKind.ColonToken AndAlso nextToken.Parent.Kind = SyntaxKind.AttributeTarget Then 556(token.Parent.Kind = SyntaxKind.XmlAttribute OrElse 557token.Parent.Kind = SyntaxKind.XmlCrefAttribute OrElse 558token.Parent.Kind = SyntaxKind.XmlNameAttribute OrElse 559token.Parent.Kind = SyntaxKind.XmlDeclaration)) OrElse 561(nextToken.Parent.Kind = SyntaxKind.XmlAttribute OrElse 562nextToken.Parent.Kind = SyntaxKind.XmlCrefAttribute OrElse 563nextToken.Parent.Kind = SyntaxKind.XmlNameAttribute OrElse 564nextToken.Parent.Kind = SyntaxKind.XmlDeclaration)) Then 576If token.Kind = SyntaxKind.AtToken AndAlso token.Parent.Kind = SyntaxKind.XmlAttributeAccessExpression Then 592If token.Kind = SyntaxKind.HashToken AndAlso TypeOf token.Parent Is DirectiveTriviaSyntax Then 597If token.Parent.Kind = SyntaxKind.RegionDirectiveTrivia AndAlso
Syntax\VisualBasicSyntaxTree.vb (1)
407Return InDocumentationComment(token.Parent)
Microsoft.CodeAnalysis.VisualBasic.CodeStyle (165)
AdjustSpaceFormattingRule.vb (25)
93If TypeOf currentToken.Parent Is BinaryExpressionSyntax AndAlso DirectCast(currentToken.Parent, BinaryExpressionSyntax).Left.IsKind(SyntaxKind.XmlAttributeAccessExpression) OrElse 94currentToken.Parent.IsKind(SyntaxKind.SimpleAssignmentStatement) AndAlso DirectCast(currentToken.Parent, AssignmentStatementSyntax).Left.IsKind(SyntaxKind.XmlAttributeAccessExpression) Then 99If currentToken.Parent.IsKind(SyntaxKind.XmlDeclarationOption) Then 173If currentToken.Kind = SyntaxKind.OpenParenToken AndAlso TypeOf currentToken.Parent Is ArrayRankSpecifierSyntax Then 183If previousToken.Kind = SyntaxKind.CloseParenToken AndAlso TypeOf previousToken.Parent Is TypeParameterListSyntax AndAlso 184currentToken.Kind = SyntaxKind.OpenParenToken AndAlso TypeOf currentToken.Parent Is ParameterListSyntax Then 196previousToken.Parent.IsKind(SyntaxKind.ConditionalAccessExpression) Then 202currentToken.Parent.Kind = SyntaxKind.ConditionalAccessExpression Then 210If previousToken.Kind = SyntaxKind.ColonToken AndAlso TypeOf previousToken.Parent Is LabelStatementSyntax Then 223If previousToken.Kind = SyntaxKind.DollarSignDoubleQuoteToken AndAlso previousToken.Parent.IsKind(SyntaxKind.InterpolatedStringExpression) Then 228If currentToken.Kind = SyntaxKind.DoubleQuoteToken AndAlso currentToken.Parent.IsKind(SyntaxKind.InterpolatedStringExpression) Then 233If (currentToken.Kind = SyntaxKind.OpenBraceToken AndAlso currentToken.Parent.IsKind(SyntaxKind.Interpolation)) OrElse 234(previousToken.Kind = SyntaxKind.CloseBraceToken AndAlso previousToken.Parent.IsKind(SyntaxKind.Interpolation)) Then 239If (previousToken.Kind = SyntaxKind.OpenBraceToken AndAlso previousToken.Parent.IsKind(SyntaxKind.Interpolation)) OrElse 240(currentToken.Kind = SyntaxKind.CloseBraceToken AndAlso currentToken.Parent.IsKind(SyntaxKind.Interpolation)) Then 245If (previousToken.Kind = SyntaxKind.CommaToken AndAlso previousToken.Parent.IsKind(SyntaxKind.InterpolationAlignmentClause)) OrElse 246(currentToken.Kind = SyntaxKind.CommaToken AndAlso currentToken.Parent.IsKind(SyntaxKind.InterpolationAlignmentClause)) Then 251If (previousToken.Kind = SyntaxKind.ColonToken AndAlso previousToken.Parent.IsKind(SyntaxKind.InterpolationFormatClause)) OrElse 252(currentToken.Kind = SyntaxKind.ColonToken AndAlso currentToken.Parent.IsKind(SyntaxKind.InterpolationFormatClause)) Then 331TypeOf previousToken.Parent Is UnaryExpressionSyntax Then 347previousToken.Parent Is currentToken.Parent Then 352Dim labelStatement = TryCast(previousToken.Parent, LabelStatementSyntax)
DefaultOperationProvider.vb (19)
56If previousToken.Parent Is Nothing Then 68ElseIf lastTrivia.RawKind = SyntaxKind.LineContinuationTrivia AndAlso previousToken.Parent.GetAncestorsOrThis(Of SyntaxNode)().Any(Function(node As SyntaxNode) IsSingleLineIfOrElseClauseSyntax(node)) Then 79If previousToken.Kind = SyntaxKind.GreaterThanToken AndAlso previousToken.Parent IsNot Nothing AndAlso TypeOf previousToken.Parent Is AttributeListSyntax Then 83If previousToken.Parent.Parent IsNot Nothing AndAlso TypeOf previousToken.Parent.Parent Is ParameterSyntax Then 90If currentToken.Kind = SyntaxKind.LessThanToken AndAlso currentToken.Parent IsNot Nothing AndAlso TypeOf currentToken.Parent Is AttributeListSyntax Then 94currentToken.Parent.Parent IsNot Nothing AndAlso TypeOf currentToken.Parent.Parent Is ParameterSyntax Then 107Dim xmlDeclaration = TryCast(previousToken.Parent, XmlDeclarationSyntax) 112If TypeOf previousToken.Parent Is XmlNodeSyntax OrElse TypeOf currentToken.Parent Is XmlNodeSyntax Then 127TypeOf currentToken.Parent Is ImportsStatementSyntax AndAlso 131Dim currentImports = DirectCast(currentToken.Parent, ImportsStatementSyntax) 181Dim xmlDeclaration = TryCast(currentToken.Parent, XmlDeclarationSyntax) 189Dim startTag = TryCast(currentToken.Parent, XmlElementStartTagSyntax) 197Dim emptyTag = TryCast(currentToken.Parent, XmlEmptyElementSyntax) 210TypeOf previousToken.Parent Is LabelStatementSyntax AndAlso
DirectiveSyntaxExtensions.vb (1)
81node = node.ParentTrivia.Token.Parent
ElasticTriviaFormattingRule.vb (17)
114currentToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 115currentToken.Parent.Parent.Kind = SyntaxKind.ObjectCollectionInitializer Then 141currentToken.Parent.Kind = SyntaxKind.NamedFieldInitializer Then 148previousToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 149previousToken.Parent.Parent.Kind = SyntaxKind.ObjectCollectionInitializer Then 156previousToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 157previousToken.Parent.Parent.Kind = SyntaxKind.ObjectCollectionInitializer Then 164currentToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 165currentToken.Parent.Parent.Kind = SyntaxKind.CollectionInitializer Then 171If currentToken.Parent.Kind = SyntaxKind.ObjectMemberInitializer Then 177If currentToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 178currentToken.Parent.Parent.Kind = SyntaxKind.ObjectCollectionInitializer Then 185Dim attributeNode = TryCast(previousToken.Parent, AttributeListSyntax) 197TypeOf currentToken.Parent Is ParenthesizedExpressionSyntax Then 203If Not TypeOf currentToken.Parent Is EndBlockStatementSyntax Then 214If TypeOf previousToken.Parent Is XmlNodeSyntax Then 236If Not TypeOf token.Parent Is NameSyntax Then
FormattingHelpers.vb (55)
13token.Parent.Kind = SyntaxKind.AttributeList AndAlso 14DirectCast(token.Parent, AttributeListSyntax).LessThanToken.Equals(token) Then 24token.Parent.Kind = SyntaxKind.AttributeList AndAlso 25DirectCast(token.Parent, AttributeListSyntax).GreaterThanToken.Equals(token) Then 33If token.Parent Is Nothing Then 39token.Parent.Kind = SyntaxKind.XmlString AndAlso 40(DirectCast(token.Parent, XmlStringSyntax).StartQuoteToken.Equals(token) OrElse 41DirectCast(token.Parent, XmlStringSyntax).EndQuoteToken.Equals(token)) Then 49If token.Parent Is Nothing Then 53If token.Parent.Kind = SyntaxKind.XmlString AndAlso 54Not DirectCast(token.Parent, XmlStringSyntax).StartQuoteToken.Equals(token) AndAlso 55Not DirectCast(token.Parent, XmlStringSyntax).EndQuoteToken.Equals(token) Then 87If token.Parent Is Nothing Then 93token.Parent.Kind = SyntaxKind.XmlEmptyElement Then 94Dim xmlElement = DirectCast(token.Parent, XmlEmptyElementSyntax) 104token.Parent.Kind = SyntaxKind.XmlAttributeAccessExpression Then 105Dim xmlMemberAccess = DirectCast(token.Parent, XmlMemberAccessExpressionSyntax) 115token.Parent.Kind = SyntaxKind.XmlPrefix Then 116Dim xmlElement = DirectCast(token.Parent, XmlPrefixSyntax) 126token.Parent.Kind = SyntaxKind.XmlAttribute Then 127Dim xmlElement = DirectCast(token.Parent, XmlAttributeSyntax) 137token.Parent.Kind = SyntaxKind.XmlCrefAttribute Then 138Dim xmlElement = DirectCast(token.Parent, XmlCrefAttributeSyntax) 148token.Parent.Kind = SyntaxKind.XmlNameAttribute Then 149Dim xmlElement = DirectCast(token.Parent, XmlNameAttributeSyntax) 159token.Parent.Kind = SyntaxKind.XmlNamespaceImportsClause Then 160Dim xmlElement = DirectCast(token.Parent, XmlNamespaceImportsClauseSyntax) 170token.Parent.Kind = SyntaxKind.XmlNamespaceImportsClause Then 171Dim xmlElement = DirectCast(token.Parent, XmlNamespaceImportsClauseSyntax) 181token.Parent.Kind = SyntaxKind.XmlBracketedName Then 182Dim xmlBracketedName = DirectCast(token.Parent, XmlBracketedNameSyntax) 192token.Parent.Kind = SyntaxKind.XmlBracketedName Then 193Dim xmlBracketedName = DirectCast(token.Parent, XmlBracketedNameSyntax) 201If token.Parent.Parent Is Nothing Then 207token.Parent.Parent.Kind = SyntaxKind.XmlElement Then 208Dim xmlElement = DirectCast(token.Parent.Parent, XmlElementSyntax) 218token.Parent.Parent.Kind = SyntaxKind.XmlElement Then 219Dim xmlElement = DirectCast(token.Parent.Parent, XmlElementSyntax) 229If token.Kind = SyntaxKind.GreaterThanToken AndAlso IsGreaterThanInXmlTag(token.Parent, token) Then 255Return TypeOf currentToken.Parent Is NullableTypeSyntax OrElse 256TypeOf currentToken.Parent Is ModifiedIdentifierSyntax 264Return TypeOf previousToken.Parent Is AttributeTargetSyntax 273Dim memberAccess = TryCast(token.Parent, MemberAccessExpressionSyntax) 278If token.Parent.Parent Is Nothing Then 283memberAccess = TryCast(token.Parent, MemberAccessExpressionSyntax) 292Dim argumentList = TryCast(token.Parent, ArgumentListSyntax) 301Dim binaryCondition = TryCast(token.Parent, BinaryConditionalExpressionSyntax) 310Dim ternaryCondition = TryCast(token.Parent, TernaryConditionalExpressionSyntax) 319Dim xmlDeclaration = TryCast(token.Parent, XmlDeclarationSyntax) 332Dim memberAccess = TryCast(token.Parent, MemberAccessExpressionSyntax) 337Dim xmlMemberAccess = TryCast(token.Parent, XmlMemberAccessExpressionSyntax) 350Dim memberAccess = TryCast(token.Parent, MemberAccessExpressionSyntax) 359Dim namedFieldInitializer = TryCast(token.Parent, NamedFieldInitializerSyntax) 368If token.Parent.IsKind(SyntaxKind.OperatorStatement) Then 369Return DirectCast(token.Parent, OperatorStatementSyntax).OperatorToken = token
InvocationExpressionSyntaxExtensions.vb (1)
28lastExpressionToken.Parent.IsKind(SyntaxKind.ArgumentList) Then
NodeBasedFormattingRule.vb (4)
141Item1PreviousToken.Parent.IsKind(SyntaxKind.XmlElementEndTag)) Then 200Dim outerBlock = firstTokenOfInnerBlock.Parent 213(ReferenceEquals(outerBlock, firstTokenOfInnerBlock.Parent) OrElse 281If TypeOf previousToken.Parent Is XmlElementSyntax Then
ParenthesizedExpressionSyntaxExtensions.vb (9)
14Dim query = token.Parent.FirstAncestorOrSelf(Of QueryExpressionSyntax)() 18Dim invocationAtLast = token.Parent.FirstAncestorOrSelf(Of InvocationExpressionSyntax)() 29Dim variableDeclarator = token.Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 35Dim lambda = token.Parent.FirstAncestorOrSelf(Of SingleLineLambdaExpressionSyntax)() 425Dim lastStatement = lastToken.Parent.GetFirstEnclosingStatement() 440nextToken.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression) Then 512nextToken.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression)) AndAlso 514nextToken.Parent.IsKind(SyntaxKind.SelectStatement)) AndAlso 517nextToken.Parent.IsKind(SyntaxKind.DictionaryAccessExpression)) Then
SemanticModelExtensions.vb (3)
18Dim expression = TryCast(name.Parent, ExpressionSyntax) 33Dim expression = TryCast(name.Parent, ExpressionSyntax) 73Dim expression = TryCast(token.Parent, ExpressionSyntax)
StatementSyntaxExtensions.vb (1)
731Return nextToken.Parent.FirstAncestorOrSelf(Of StatementSyntax)()
StructuredTriviaFormattingRule.vb (4)
37If TypeOf previousToken.Parent Is StructuredTriviaSyntax OrElse TypeOf currentToken.Parent Is StructuredTriviaSyntax Then 41If TypeOf previousToken.Parent Is DirectiveTriviaSyntax OrElse TypeOf currentToken.Parent Is DirectiveTriviaSyntax Then
SyntaxTokenExtensions.vb (5)
50Dim expression = TryCast(token.Parent, ExpressionSyntax) 58Return TypeOf token.Parent Is SkippedTokensTriviaSyntax 63Return token.Parent.FirstAncestorOrSelf(predicate) 116Return token.Parent IsNot Nothing AndAlso 117token.Parent.AncestorsAndSelf().Any(Function(n) n Is node)
SyntaxTreeExtensions.vb (2)
51Dim current = token.Parent 361Dim statement = token.Parent.FirstAncestorOrSelf(Of StatementSyntax)()
VisualBasicOrderModifiersDiagnosticAnalyzer.vb (1)
54Return modifiers.First().Parent Is statement
VisualBasicSyntaxFacts.vb (17)
111Return (IsUnaryExpressionOperatorToken(CType(token.Kind, SyntaxKind)) AndAlso (TypeOf token.Parent Is UnaryExpressionSyntax OrElse TypeOf token.Parent Is OperatorStatementSyntax)) OrElse 112(IsBinaryExpressionOperatorToken(CType(token.Kind, SyntaxKind)) AndAlso (TypeOf token.Parent Is BinaryExpressionSyntax OrElse TypeOf token.Parent Is OperatorStatementSyntax)) 253If TypeOf token.Parent Is IdentifierNameSyntax AndAlso token.HasMatchingText(SyntaxKind.NewKeyword) Then 254Dim memberAccess = TryCast(token.Parent.Parent, MemberAccessExpressionSyntax) 262If TypeOf token.Parent Is IdentifierNameSyntax AndAlso token.HasMatchingText(SyntaxKind.NewKeyword) Then 263Dim memberAccess = TryCast(token.Parent.Parent, MemberAccessExpressionSyntax) 287Return TypeOf token.Parent Is QueryClauseSyntax 289Return (TypeOf token.Parent Is QueryClauseSyntax) OrElse (token.Parent.IsKind(SyntaxKind.GroupAggregation)) 291Return TypeOf token.Parent Is JoinConditionSyntax 293Return TypeOf token.Parent Is OrderingSyntax 295Return TypeOf token.Parent Is CollectionRangeVariableSyntax 718Dim node = root.FindToken(position).Parent 1051Dim node = token.Parent 1519Dim parent = token.Parent
VisualBasicTriviaFormatter.vb (1)
118Token2.Kind = SyntaxKind.CaseKeyword AndAlso Token2.Parent.IsKind(SyntaxKind.CaseStatement) Then
Microsoft.CodeAnalysis.VisualBasic.CodeStyle.Fixes (48)
CallStatementSyntaxExtensions.vb (1)
15nextToken.Parent.IsKind(SyntaxKind.PredefinedType)) AndAlso
MultiLineConditionalExpressionFormattingRule.vb (1)
33Return token.Parent.HasAnnotation(
SpecialFormattingOperation.vb (1)
28Dim attributeNode = TryCast(previousToken.Parent, AttributeListSyntax)
SyntaxTokenExtensions.vb (4)
60Dim allowsImplicitLineContinuation = token.Parent IsNot Nothing AndAlso 105Return targetToken.Parent.IsKind(SyntaxKind.BadDirectiveTrivia) 110targetToken.GetPreviousToken().Parent.IsKind(SyntaxKind.BadDirectiveTrivia) 128Dim argumentList = TryCast(token.Parent, ArgumentListSyntax)
SyntaxTreeExtensions.vb (23)
125If targetToken.Kind = SyntaxKind.None OrElse targetToken.Parent Is Nothing Then 177If token.Kind = SyntaxKind.GreaterThanToken AndAlso token.Parent.Kind = SyntaxKind.AttributeList Then 248If targetToken.Parent.IsKind(SyntaxKind.ParameterList) AndAlso 255If targetToken.Parent.IsKind(SyntaxKind.Parameter) AndAlso 322If targetToken.Parent.IsKind(SyntaxKind.ArgumentList) AndAlso 323TypeOf targetToken.Parent.Parent Is NewExpressionSyntax Then 325Dim symbolInfo = semanticModel.GetSymbolInfo(DirectCast(targetToken.Parent.Parent, NewExpressionSyntax).Type(), cancellationToken) 443targetToken.Parent.IsKind(SyntaxKind.ParameterList) AndAlso 444TypeOf targetToken.Parent.Parent Is LambdaHeaderSyntax Then 450targetToken.Parent.IsKind(SyntaxKind.ArgumentList, SyntaxKind.CollectionInitializer, SyntaxKind.EraseStatement) Then 470targetToken.Parent.IsKind(SyntaxKind.QualifiedName) AndAlso 471targetToken.Parent.Parent.IsKind(SyntaxKind.Attribute) Then 531Dim parent = token.Parent 549Dim possibleTuple = token.Parent 672If targetToken.Kind = SyntaxKind.None OrElse targetToken.Parent Is Nothing Then 686Dim ancestor = targetToken.Parent 722If targetToken.Parent.FirstAncestorOrSelf(Of AggregateClauseSyntax)() Is Nothing AndAlso 723targetToken.Parent.FirstAncestorOrSelf(Of GroupByClauseSyntax)() Is Nothing AndAlso 724targetToken.Parent.FirstAncestorOrSelf(Of GroupJoinClauseSyntax)() Is Nothing Then 779Not targetToken.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression) Then 784Dim memberAccess = DirectCast(targetToken.Parent, MemberAccessExpressionSyntax) 1080Return tokenOnLeftOfPosition.Parent.IsKind(SyntaxKind.ParenthesizedExpression, 1085tokenOnLeftOfPosition.Parent.IsKind(SyntaxKind.TupleExpression, SyntaxKind.TupleType)
VisualBasicIndentationService.Indenter.vb (6)
159(containingToken.IsKind(SyntaxKind.CloseBraceToken) AndAlso token.Parent.IsKind(SyntaxKind.Interpolation)) Then 192If Not ContainingStatementHasDiagnostic(lastVisibleTokenOnPreviousLine.Parent) Then 205Dim visibleTokenOnCurrentLineParent = visibleTokenOnCurrentLine.Parent 313(TypeOf token.Parent Is ParameterListSyntax OrElse 314TypeOf token.Parent Is ArgumentListSyntax OrElse 315TypeOf token.Parent Is TypeParameterListSyntax)
VisualBasicIndentationService.vb (1)
96Dim startNode = token.Parent
VisualBasicSyntaxContext.vb (5)
140Dim asClause = TryCast(targetToken.Parent, AsClauseSyntax) 175isGenericConstraintContext:=targetToken.Parent.IsKind(SyntaxKind.TypeParameterSingleConstraintClause, SyntaxKind.TypeParameterMultipleConstraintClause), 184isOnArgumentListBracketOrComma:=targetToken.Parent.IsKind(SyntaxKind.ArgumentList), 206Dim collectionRange = TryCast(targetToken.Parent, CollectionRangeVariableSyntax) 271Return TypeOf targetToken.Parent Is DirectiveTriviaSyntax
VisualBasicSyntaxContextExtensions.vb (5)
65If targetToken.Kind = SyntaxKind.None OrElse targetToken.Parent Is Nothing Then 83Dim ancestor = context.TargetToken.Parent 119If token.Parent.IsKind(SyntaxKind.ArgumentList) AndAlso 120TypeOf token.Parent.Parent Is NewExpressionSyntax Then 122Dim symbolInfo = context.SemanticModel.GetSymbolInfo(DirectCast(token.Parent.Parent, NewExpressionSyntax).Type())
VisualBasicTypeInferenceService.TypeInferrer.vb (1)
131Dim parent = token.Parent
Microsoft.CodeAnalysis.VisualBasic.EditorFeatures (26)
AutomaticEndConstructCorrection\AutomaticEndConstructCorrector.vb (10)
107Dim startToken = GetBeginToken(token.Parent) 167If token.Parent Is Nothing Then 192If BeginStatementIsInValidForm(pairToken.Parent) Then 200If token.Parent.Parent Is Nothing Then 204Dim beginNode = token.Parent.Parent.TypeSwitch( 220Dim endBlockStatement = TryCast(token.Parent, EndBlockStatementSyntax) 235If token.Parent.Parent Is Nothing Then 239Return token.Parent.Parent.TypeSwitch( 249Dim pairToken = GetBeginToken(token.Parent) 256If BeginStatementIsInValidForm(token.Parent) Then
DocumentationComments\XmlTagCompletionCommandHandler.vb (3)
42token.Parent.IsKind(SyntaxKind.XmlElementStartTag) AndAlso 43token.Parent.Parent.IsKind(SyntaxKind.XmlElement) Then 45Dim element = DirectCast(token.Parent.Parent, XmlElementSyntax)
EndConstructGeneration\EndConstructStatementVisitor_LambdaHeader.vb (1)
26Dim isNextToXmlEmbeddedExpression = tokenNextToLambda.IsKind(SyntaxKind.PercentGreaterThanToken) AndAlso tokenNextToLambda.Parent.IsKind(SyntaxKind.XmlEmbeddedExpression)
EndConstructGeneration\VisualBasicEndConstructGenerationService.vb (2)
306Dim aligningWhitespace = subjectBuffer.CurrentSnapshot.GetAligningWhitespace(state.TokenToLeft.Parent.Span.Start) 321Return TryCast(token.Parent, T)
LineCommit\CommitFormatter.vb (1)
237Dim node = token.Parent
Utilities\LineAdjustmentFormattingRule.vb (9)
29If (current.Parent.Kind = SyntaxKind.EndSubStatement AndAlso 30current.Parent.Parent.IsKind(SyntaxKind.ConstructorBlock, SyntaxKind.SubBlock)) OrElse 31(current.Parent.Kind = SyntaxKind.EndFunctionStatement AndAlso 32current.Parent.Parent.Kind = SyntaxKind.FunctionBlock) AndAlso 33Not DirectCast(current.Parent.Parent, MethodBlockSyntax).Statements.Any() Then 40If currentToken.Kind = SyntaxKind.LessThanToken AndAlso currentToken.Parent IsNot Nothing AndAlso TypeOf currentToken.Parent Is AttributeListSyntax AndAlso 41previousToken.Kind = SyntaxKind.GreaterThanToken AndAlso previousToken.Parent IsNot Nothing AndAlso TypeOf previousToken.Parent Is AttributeListSyntax Then
Microsoft.CodeAnalysis.VisualBasic.EditorFeatures.UnitTests (2)
EditAndContinue\VisualBasicEditAndContinueAnalyzerTests.vb (1)
45Dim node = tree.GetRoot().FindToken(expected.Key).Parent
TypeInferrer\TypeInferrerTests.vb (1)
50Dim currentNode = token.Parent
Microsoft.CodeAnalysis.VisualBasic.Features (155)
BraceCompletion\BracketBraceCompletionService.vb (1)
73Dim skippedToken = TryCast(token.Parent, SkippedTokensTriviaSyntax)
BraceCompletion\InterpolationBraceCompletionService.vb (2)
41(token.IsKind(SyntaxKind.CloseBraceToken) AndAlso token.Parent.IsKind(SyntaxKind.Interpolation)) 69(token.IsKind(SyntaxKind.CloseBraceToken) AndAlso token.Parent.IsKind(SyntaxKind.Interpolation))
BraceCompletion\ParenthesisBraceCompletionService.vb (2)
42Dim skippedTriviaNode = TryCast(token.Parent, SkippedTokensTriviaSyntax) 46If skippedToken.Kind <> SyntaxKind.CloseParenToken OrElse Not TypeOf skippedToken.Parent Is BinaryConditionalExpressionSyntax Then
BraceMatching\InterpolatedStringBraceMatcher.vb (2)
33token.Parent.IsKind(SyntaxKind.InterpolatedStringExpression) Then 35Dim interpolatedString = DirectCast(token.Parent, InterpolatedStringExpressionSyntax)
BraceMatching\LessThanGreaterThanBraceMatcher.vb (1)
26Return tok.Parent.Kind <> SyntaxKind.XmlElementStartTag
ChangeSignature\ChangeSignatureFormattingRule.vb (2)
38(previousToken.Parent.IsKind(SyntaxKind.ParameterList) OrElse previousToken.Parent.IsKind(SyntaxKind.ArgumentList)) Then
ChangeSignature\VisualBasicChangeSignatureService.vb (3)
103Dim matchingNode = GetMatchingNode(token.Parent, restrictToDeclarations) 129If token.Parent.AncestorsAndSelf().Any(Function(a) a Is objectCreation.Type) Then 728results.Add(semanticModel.GetDeclaredSymbol(cast.Identifier.Parent, cancellationToken))
CodeFixes\GenerateEndConstruct\GenerateEndConstructCodeFixProvider.vb (1)
216Dim nextNode = endStatement.Parent.GetLastToken().GetNextToken().Parent
CodeFixes\OverloadBase\OverloadBaseCodeFixProvider.vb (4)
44If TypeOf token.Parent IsNot PropertyStatementSyntax AndAlso TypeOf token.Parent IsNot MethodStatementSyntax Then 49context.RegisterCodeFix(New AddKeywordAction(context.Document, token.Parent, VBFeaturesResources.Add_Overloads, SyntaxKind.OverloadsKeyword, context.Options), context.Diagnostics) 51context.RegisterCodeFix(New AddKeywordAction(context.Document, token.Parent, VBFeaturesResources.Add_Shadows, SyntaxKind.ShadowsKeyword, context.Options), context.Diagnostics)
CodeLens\VisualBasicDisplayInfoService.vb (1)
57Return GetDisplayNode(structuredTriviaSyntax.ParentTrivia.Token.Parent)
Completion\CompletionProviders\AwaitCompletionProvider.vb (1)
70Dim memberAccess = TryCast(dotToken.Value.Parent, MemberAccessExpressionSyntax)
Completion\CompletionProviders\CrefCompletionProvider.vb (9)
71Dim parentNode = token.Parent?.FirstAncestorOrSelf(Of DocumentationCommentTriviaSyntax)()?.ParentTrivia.Token.Parent 110Dim parentNode = token.Parent?.FirstAncestorOrSelf(Of DocumentationCommentTriviaSyntax)()?.ParentTrivia.Token.Parent 125token.Parent?.FirstAncestorOrSelf(Of XmlCrefAttributeSyntax)() IsNot Nothing 139If token.Parent.IsKind(SyntaxKind.XmlString) AndAlso token.Parent.IsParentKind(SyntaxKind.XmlAttribute) Then 140Dim xmlAttribute = DirectCast(token.Parent.Parent, XmlAttributeSyntax) 170Return GetQualifiedSymbols(DirectCast(token.Parent, QualifiedNameSyntax), token, semanticModel, cancellationToken)
Completion\CompletionProviders\ImplementsClauseCompletionProvider.vb (6)
93If context.TargetToken.Kind = SyntaxKind.ImplementsKeyword AndAlso context.TargetToken.Parent.IsKind(SyntaxKind.ImplementsClause) Then 94result = GetInterfacesAndContainers(position, context.TargetToken.Parent, context.SemanticModel, memberKindKeyword, cancellationToken) 97If context.TargetToken.Kind = SyntaxKind.CommaToken AndAlso context.TargetToken.Parent.IsKind(SyntaxKind.ImplementsClause) Then 98result = GetInterfacesAndContainers(position, context.TargetToken.Parent, context.SemanticModel, memberKindKeyword, cancellationToken) 102result = GetDottedMembers(position, DirectCast(context.TargetToken.Parent, QualifiedNameSyntax), context.SemanticModel, memberKindKeyword, cancellationToken) 270Dim parent = token.Parent
Completion\CompletionProviders\ImportCompletionProvider\ImportCompletionProviderHelper.vb (1)
18Dim Location = If(syntaxContext.LeftToken.Parent, Await syntaxContext.SyntaxTree.GetRootAsync(token).ConfigureAwait(False))
Completion\CompletionProviders\NamedParameterCompletionProvider.vb (2)
62Dim argumentList = TryCast(token.Parent, ArgumentListSyntax) 198Dim current = token.Parent
Completion\CompletionProviders\ObjectCreationCompletionProvider.vb (1)
51newExpression = TryCast(newToken.Parent, ExpressionSyntax)
Completion\CompletionProviders\ObjectInitializerCompletionProvider.vb (2)
47Dim initializer = TryCast(token.Parent, ObjectMemberInitializerSyntax) 80Dim containingInitializer = commaOrBrace.Parent
Completion\CompletionProviders\OverrideCompletionProvider.vb (1)
143Return overridesToken.Kind = SyntaxKind.OverridesKeyword AndAlso IsOnStartLine(overridesToken.Parent.SpanStart, text, startLine)
Completion\CompletionProviders\SymbolCompletionProvider.vb (2)
91Return token.Parent.Kind <> SyntaxKind.SimpleMemberAccessExpression OrElse 92Not DirectCast(token.Parent, MemberAccessExpressionSyntax).Expression.IsKind(SyntaxKind.NumericLiteralExpression)
Completion\CompletionProviders\VisualBasicSuggestionModeCompletionProvider.vb (4)
65If targetToken.Kind = SyntaxKind.CommaToken AndAlso targetToken.Parent.Kind = SyntaxKind.ParameterList Then 84If targetToken.Parent.Kind = SyntaxKind.SelectClause Then 95targetToken.Parent.IsKind(SyntaxKind.ForStatement) Then 105targetToken.Parent.IsKind(SyntaxKind.UsingStatement) Then
Completion\CompletionProviders\XmlDocCommentCompletionProvider.vb (17)
75If token.Parent.IsKind(SyntaxKind.XmlString) AndAlso token.Parent.Parent.IsKind(SyntaxKind.XmlAttribute) Then 76Dim attribute = DirectCast(token.Parent.Parent, XmlAttributeSyntax) 84If token.Parent.GetAncestor(Of XmlCrefAttributeSyntax)() IsNot Nothing Then 104Dim semanticModel = Await document.ReuseExistingSpeculativeModelAsync(attachedToken.Parent, cancellationToken).ConfigureAwait(False) 137Dim xmlNameOnly = token.IsKind(SyntaxKind.LessThanToken) OrElse token.Parent.IsKind(SyntaxKind.XmlName) 142ElseIf token.Parent.IsKind(SyntaxKind.XmlText) AndAlso 143token.Parent.IsParentKind(SyntaxKind.DocumentationCommentTrivia) Then 148ElseIf token.Parent.IsKind(SyntaxKind.XmlText) AndAlso 149token.Parent.Parent.IsKind(SyntaxKind.XmlElement) Then 151Dim xmlElement = token.Parent.Parent 161If token.Parent.IsKind(SyntaxKind.XmlElementStartTag, SyntaxKind.XmlName) AndAlso 185Dim endTag = TryCast(token.Parent, XmlElementEndTagSyntax) 238If targetToken.IsChildToken(Function(n As XmlNameSyntax) n.LocalName) AndAlso targetToken.Parent Is tagNameSyntax Then 244If targetToken.IsChildToken(Function(n As XmlNameSyntax) n.LocalName) AndAlso targetToken.Parent.IsParentKind(SyntaxKind.XmlAttribute) Then 250If (targetToken.IsChildToken(Function(s As XmlStringSyntax) s.EndQuoteToken) AndAlso targetToken.Parent.IsParentKind(SyntaxKind.XmlAttribute)) OrElse 257If (targetToken.IsChildToken(Function(s As XmlStringSyntax) s.StartQuoteToken) AndAlso targetToken.Parent.IsParentKind(SyntaxKind.XmlAttribute)) OrElse
Completion\KeywordRecommenders\Declarations\AsKeywordRecommender.vb (2)
103If usingStatement.Expression Is targetToken.Parent Then 115Dim parentField = targetToken.Parent.FirstAncestorOrSelf(Of FieldDeclarationSyntax)()
Completion\KeywordRecommenders\Declarations\AttributeScopesKeywordRecommender.vb (1)
33Dim attributeList = targetToken.Parent
Completion\KeywordRecommenders\Declarations\CovarianceModifiersKeywordRecommender.vb (1)
32Dim parent = targetToken.Parent
Completion\KeywordRecommenders\Declarations\EndBlockKeywordRecommender.vb (2)
35Dim keywords = From keyword In GetUnclosedBlockKeywords(targetToken.Parent) 50Dim node = targetToken.Parent
Completion\KeywordRecommenders\Declarations\GenericConstraintsKeywordRecommender.vb (2)
30ElseIf TypeOf targetToken.Parent Is TypeParameterMultipleConstraintClauseSyntax Then 31Dim multipleConstraint = DirectCast(targetToken.Parent, TypeParameterMultipleConstraintClauseSyntax)
Completion\KeywordRecommenders\Declarations\OfKeywordRecommender.vb (2)
45If targetToken.IsKind(SyntaxKind.OpenParenToken) AndAlso targetToken.Parent.IsKind(SyntaxKind.TypeArgumentList) Then 52If targetToken.IsKind(SyntaxKind.OpenParenToken) AndAlso targetToken.Parent.IsKind(SyntaxKind.TypeArgumentList) Then
Completion\KeywordRecommenders\Declarations\OverloadableOperatorRecommender.vb (1)
25Not targetToken.Parent.IsKind(SyntaxKind.OperatorStatement) Then
Completion\KeywordRecommenders\Declarations\ParameterModifiersKeywordRecommender.vb (1)
61ElseIf targetToken.Kind = SyntaxKind.CommaToken AndAlso targetToken.Parent.Kind = SyntaxKind.ParameterList Then
Completion\KeywordRecommenders\Expressions\AddressOfKeywordRecommender.vb (1)
29If context.IsAnyExpressionContext AndAlso Not context.TargetToken.Parent.IsKind(SyntaxKind.AddressOfExpression) Then
Completion\KeywordRecommenders\Expressions\BinaryOperatorKeywordRecommender.vb (3)
55Dim identifierName = TryCast(token.Parent, IdentifierNameSyntax) 70If usingStatement.Expression Is token.Parent Then 124If token.Parent.IsParentKind(SyntaxKind.SimpleArgument) Then
Completion\KeywordRecommenders\Expressions\KeyKeywordRecommender.vb (4)
30targetToken.Parent.IsKind(SyntaxKind.ObjectMemberInitializer) Then 32If targetToken.Parent.GetParentOrNull().IsKind(SyntaxKind.AnonymousObjectCreationExpression) Then 37If targetToken.Parent.GetParentOrNull().GetParentOrNull().IsKind(SyntaxKind.AsNewClause) Then 38Dim asNewClause = DirectCast(targetToken.Parent.Parent.Parent, AsNewClauseSyntax)
Completion\KeywordRecommenders\OnErrorStatements\ErrorKeywordRecommender.vb (1)
20If targetToken.IsKind(SyntaxKind.OnKeyword) AndAlso IsOnErrorStatement(targetToken.Parent) Then
Completion\KeywordRecommenders\OnErrorStatements\GoToDestinationsRecommender.vb (1)
28Return If(targetToken.Kind = SyntaxKind.GoToKeyword AndAlso TypeOf targetToken.Parent Is OnErrorGoToStatementSyntax,
Completion\KeywordRecommenders\OnErrorStatements\GoToKeywordRecommender.vb (1)
27Return If(targetToken.Kind = SyntaxKind.ErrorKeyword AndAlso IsOnErrorStatement(targetToken.Parent) AndAlso Not context.IsInLambda,
Completion\KeywordRecommenders\OnErrorStatements\NextKeywordRecommender.vb (1)
26Return If(targetToken.IsKind(SyntaxKind.ResumeKeyword) AndAlso Not context.IsInLambda AndAlso targetToken.Parent.IsKind(SyntaxKind.OnErrorResumeNextStatement, SyntaxKind.ResumeStatement, SyntaxKind.ResumeNextStatement),
Completion\KeywordRecommenders\OnErrorStatements\ResumeKeywordRecommender.vb (1)
25If targetToken.Kind = SyntaxKind.ErrorKeyword AndAlso IsOnErrorStatement(targetToken.Parent) Then
Completion\KeywordRecommenders\Statements\CaseKeywordRecommender.vb (1)
23Not targetToken.Parent.IsKind(SyntaxKind.SelectClause) AndAlso
Completion\KeywordRecommenders\Statements\EachKeywordRecommender.vb (2)
28If targetToken.IsKind(SyntaxKind.ForKeyword) AndAlso targetToken.Parent.IsKind(SyntaxKind.ForStatement) Then 29Dim forStatement = DirectCast(targetToken.Parent, ForStatementSyntax)
Completion\KeywordRecommenders\Statements\ElseKeywordRecommender.vb (4)
35If targetToken.Kind = SyntaxKind.CaseKeyword AndAlso targetToken.Parent.IsKind(SyntaxKind.CaseStatement) Then 42If selectBlock.CaseBlocks.Last().CaseStatement Is targetToken.Parent Then 54context.TargetToken.Parent?.Parent.IsKind(SyntaxKind.MultiLineIfBlock, SyntaxKind.ElseIfBlock) Then 58Dim statement = context.TargetToken.Parent.GetAncestor(Of StatementSyntax)
Completion\KeywordRecommenders\Statements\FinallyKeywordRecommender.vb (1)
52Dim parent = targetToken.Parent
Completion\KeywordRecommenders\Statements\UntilAndWhileKeywordRecommender.vb (3)
25If (targetToken.Kind = SyntaxKind.DoKeyword AndAlso TypeOf targetToken.Parent Is DoStatementSyntax) OrElse 27TypeOf targetToken.Parent Is LoopStatementSyntax AndAlso 28targetToken.Parent.Parent.IsKind(SyntaxKind.SimpleDoLoopBlock, SyntaxKind.DoLoopWhileBlock, SyntaxKind.DoLoopUntilBlock)) Then
Completion\KeywordRecommenders\Types\BuiltInTypesKeywordRecommender.vb (1)
48If targetToken.Parent.IsKind(SyntaxKind.AttributeList) Then
Debugging\DataTipInfoGetter.vb (2)
25If token.Parent.IsKind(SyntaxKind.ModifiedIdentifier) Then 29Dim expression = TryCast(token.Parent, ExpressionSyntax)
Debugging\ProximityExpressionsGetter.vb (1)
68Dim parentEndBlock = TryCast(token.Parent, EndBlockStatementSyntax)
EditAndContinue\BreakpointSpans.vb (1)
59Dim node = root.FindToken(position).Parent
EditAndContinue\VisualBasicEditAndContinueAnalyzer.vb (1)
578node = declarationBody.FindToken(position).Parent
EmbeddedLanguages\EmbeddedLanguageUtilities.vb (1)
14Dim containingStatement = stringLiteral.Parent.GetAncestor(Of StatementSyntax)
ExtractMethod\Extensions.vb (1)
164Dim throwStatement = TryCast(token.Parent, ThrowStatementSyntax)
ExtractMethod\VisualBasicMethodExtractor.TriviaResult.vb (2)
168Dim singleLineIf = token.Parent.GetAncestor(Of SingleLineIfStatementSyntax)() 173Dim singleLineLambda = token.Parent.GetAncestor(Of SingleLineLambdaExpressionSyntax)()
ExtractMethod\VisualBasicMethodExtractor.vb (4)
138If TypeOf currentToken.Parent Is TypeStatementSyntax AndAlso 139currentToken.Parent.GetFirstToken(includeZeroWidth:=True) = currentToken Then 149token.Parent.Kind = SyntaxKind.AttributeList AndAlso 150DirectCast(token.Parent, AttributeListSyntax).LessThanToken.Equals(token) Then
ExtractMethod\VisualBasicSelectionResult.vb (1)
74Dim current = token.Parent
GenerateMember\GenerateVariable\VisualBasicGenerateVariableService.vb (1)
102Dim block = identifierToken.Parent.GetContainingMultiLineExecutableBlocks().FirstOrDefault()
GenerateType\VisualBasicGenerateTypeService.vb (1)
153simpleName.Parent Is token.Parent Then
IntroduceVariable\VisualBasicIntroduceVariableService.Rewriter.vb (1)
39Dim innerExpression = parenthesizedExpression.OpenParenToken.GetNextToken().Parent
MetadataAsSource\VisualBasicMetadataAsSourceService.vb (2)
89Dim member1 = token1.Parent.FirstAncestorOrSelf(Of DeclarationStatementSyntax)() 90Dim member2 = token2.Parent.FirstAncestorOrSelf(Of DeclarationStatementSyntax)()
MultiLineConditionalExpressionFormattingRule.vb (1)
33Return token.Parent.HasAnnotation(
QuickInfo\VisualBasicSemanticQuickInfoProvider.vb (7)
58Dim parent = token.Parent 131If token.IsKind(SyntaxKind.SubKeyword, SyntaxKind.FunctionKeyword) AndAlso token.Parent.IsKind(SyntaxKind.SubLambdaHeader, SyntaxKind.FunctionLambdaHeader) Then 132found = token.Parent.Parent 142token.Parent?.Parent.IsKind(SyntaxKind.InvocationExpression) = True Then 143found = token.Parent.Parent 153token.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression) Then 155found = DirectCast(token.Parent, MemberAccessExpressionSyntax).Name.Identifier
ReplaceDocCommentTextWithTag\VisualBasicReplaceDocCommentTextWithTagCodeRefactoringProvider.vb (2)
27Return token.Parent.IsKind(SyntaxKind.XmlAttribute) Or token.Parent.IsKind(SyntaxKind.XmlString)
ReplaceMethodWithProperty\VisualBasicReplaceMethodWithPropertyService.vb (2)
140Dim nameNode = TryCast(nameToken.Parent, IdentifierNameSyntax) 169Dim nameNode = TryCast(nameToken.Parent, IdentifierNameSyntax)
SignatureHelp\AttributeSignatureHelpProvider.vb (2)
44TypeOf token.Parent Is ArgumentListSyntax AndAlso 45TypeOf token.Parent.Parent Is AttributeSyntax
SignatureHelp\CollectionInitializerSignatureHelpProvider.vb (1)
41TypeOf token.Parent Is CollectionInitializerSyntax
SignatureHelp\ConditionalExpressionSignatureHelpProvider.vb (2)
24token.Parent.Kind = Kind 38token.Parent.Kind <> Kind)
SignatureHelp\FunctionAggregationSignatureHelpProvider.vb (1)
50Function(t) TypeOf t.Parent Is FunctionAggregationSyntax,
SignatureHelp\GenericNameSignatureHelpProvider.vb (2)
54TypeOf token.Parent Is TypeArgumentListSyntax AndAlso 55TypeOf token.Parent.Parent Is GenericNameSyntax
SignatureHelp\InvocationExpressionSignatureHelpProvider.vb (2)
55TypeOf token.Parent Is ArgumentListSyntax AndAlso 56TypeOf token.Parent.Parent Is InvocationExpressionSyntax
SignatureHelp\MidAssignmentSignatureHelpProvider.vb (3)
28token.Parent.Kind = SyntaxKind.ArgumentList AndAlso 29token.Parent.IsParentKind(SyntaxKind.MidExpression) AndAlso 30token.Parent.Parent.IsParentKind(SyntaxKind.MidAssignmentStatement)
SignatureHelp\ObjectCreationExpressionSignatureHelpProvider.vb (2)
54TypeOf token.Parent Is ArgumentListSyntax AndAlso 55TypeOf token.Parent.Parent Is ObjectCreationExpressionSyntax
SignatureHelp\RaiseEventStatementSignatureHelpProvider.vb (2)
53TypeOf token.Parent Is ArgumentListSyntax AndAlso 54TypeOf token.Parent.Parent Is RaiseEventStatementSyntax
Structure\VisualBasicStructureHelpers.vb (2)
217firstToken.Parent.IsKind(SyntaxKind.AttributeList) Then 219Dim attributeOwner = firstToken.Parent.Parent
VisualBasicOrderModifiersDiagnosticAnalyzer.vb (1)
54Return modifiers.First().Parent Is statement
Wrapping\SeparatedSyntaxList\VisualBasicArgumentWrapper.vb (2)
76If token.Parent.Ancestors().Contains(listSyntax) Then 77Dim current = token.Parent
Microsoft.CodeAnalysis.VisualBasic.Semantic.UnitTests (83)
Compilation\SemanticModelAPITests.vb (2)
117Dim node2 = CompilationUtils.FindTokenFromText(tree, "c2").Parent 157Dim node2 = CompilationUtils.FindTokenFromText(tree, "c2").Parent
Compilation\SemanticModelGetDeclaredSymbolAPITests.vb (15)
755Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 909Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 1165Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 1181Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 1420Dim node = treeA.GetCompilationUnitRoot().FindToken(treeA.GetCompilationUnitRoot().ToFullString().IndexOf("lambdaParam", StringComparison.Ordinal)).Parent 1634Dim node = treeA.GetCompilationUnitRoot().FindToken(treeA.GetCompilationUnitRoot().ToFullString().IndexOf("VB6", StringComparison.Ordinal)).Parent.Parent 1786Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 1899Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 2134Dim node = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToFullString().IndexOf("F(2)", StringComparison.Ordinal)).Parent 2498Dim node = treeA.GetCompilationUnitRoot().FindToken(treeA.GetCompilationUnitRoot().ToFullString().IndexOf("Delegate", StringComparison.Ordinal)).Parent 2503node = treeA.GetCompilationUnitRoot().FindToken(treeA.GetCompilationUnitRoot().ToFullString().IndexOf("Delegate", 30, StringComparison.Ordinal)).Parent 2508node = treeA.GetCompilationUnitRoot().FindToken(treeA.GetCompilationUnitRoot().ToFullString().IndexOf("Delegate", 140, StringComparison.Ordinal)).Parent 2513node = treeA.GetCompilationUnitRoot().FindToken(treeA.GetCompilationUnitRoot().ToFullString().IndexOf("Delegate", 160, StringComparison.Ordinal)).Parent 2540Dim node = treeA.GetCompilationUnitRoot().FindToken(treeA.GetCompilationUnitRoot().ToFullString().IndexOf("lambdaParam", StringComparison.Ordinal)).Parent 2675Dim node = tree.GetCompilationUnitRoot().FindToken(position).Parent
DeclaringSyntaxNodeTests.vb (6)
107Dim node = token.Parent.FirstAncestorOrSelf(Of TNode)() 121Dim node = token.Parent.FirstAncestorOrSelf(Of TNode)() 131Dim node = tree.GetCompilationUnitRoot().FindToken(position).Parent.FirstAncestorOrSelf(Of TNode)() 234Dim declaratorA1 = tree.GetCompilationUnitRoot().FindToken(posA1).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 269Dim declaratorA1 = tree.GetCompilationUnitRoot().FindToken(posA1).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 310Dim declaratorA1 = tree.GetCompilationUnitRoot().FindToken(posA1).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)()
FlowAnalysis\FlowTestBase.vb (3)
161Dim parent = token.Parent 180Dim startNode = startToken.Parent 198Dim endNode = endToken.Parent
FlowAnalysis\IterationJumpYieldStatementTests.vb (1)
1369Dim stmtNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Next", StringComparison.Ordinal)).Parent, NextStatementSyntax)
FlowAnalysis\RegionAnalysisTests.vb (24)
4829Dim exprSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("{4, 5}", StringComparison.Ordinal)).Parent, CollectionInitializerSyntax) 4852Dim exprSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("{4, 5}", StringComparison.Ordinal)).Parent, CollectionInitializerSyntax) 4875Dim exprSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("{4, 5}", StringComparison.Ordinal)).Parent, CollectionInitializerSyntax) 4900Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("If False", StringComparison.Ordinal)).Parent, IfStatementSyntax) 4926Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Else", StringComparison.Ordinal)).Parent, ElseStatementSyntax) 4948Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("With New Object()", StringComparison.Ordinal)).Parent, WithStatementSyntax) 4975Dim withStatement = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("With tableauEmission(t)", StringComparison.Ordinal)).Parent, WithStatementSyntax) 5000Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Try", StringComparison.Ordinal)).Parent, TryStatementSyntax) 5024Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Catch e As Exception", StringComparison.Ordinal)).Parent, CatchStatementSyntax) 5048Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Finally", StringComparison.Ordinal)).Parent, FinallyStatementSyntax) 5071Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("SyncLock New With {.x = 0}", StringComparison.Ordinal)).Parent, SyncLockStatementSyntax) 5094Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("While True", StringComparison.Ordinal)).Parent, WhileStatementSyntax) 5117Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Using mem = New MemoryStream()", StringComparison.Ordinal)).Parent, UsingStatementSyntax) 5145Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Loop While Me.backwardBranchChanged", StringComparison.Ordinal)).Parent, LoopStatementSyntax) 5169Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Select Case 1 + 2 + 3", StringComparison.Ordinal)).Parent, SelectStatementSyntax) 5193Dim selectSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Select Case 1 + 2 + 3", StringComparison.Ordinal)).Parent, SelectStatementSyntax) 5217Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Do", StringComparison.Ordinal)).Parent, DoStatementSyntax) 5239Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("For i = 0 To 1", StringComparison.Ordinal)).Parent, ForStatementSyntax) 5261Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("For Each c In """"", StringComparison.Ordinal)).Parent, ForEachStatementSyntax) 8233Dim node = DirectCast(root.FindToken(root.ToFullString().IndexOf("Return", StringComparison.Ordinal)).Parent, StatementSyntax) 8264Dim node = DirectCast(root.FindToken(root.ToFullString().IndexOf("Return", StringComparison.Ordinal)).Parent, StatementSyntax) 8296Dim node = DirectCast(root.FindToken(root.ToFullString().IndexOf("Dim", StringComparison.Ordinal)).Parent, StatementSyntax) 9864Dim stmtNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("End Select", StringComparison.Ordinal)).Parent, StatementSyntax) 9887Dim stmtNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Select Case", StringComparison.Ordinal)).Parent, StatementSyntax)
FlowAnalysis\RegionAnalysisTestsWithStaticLocals.vb (8)
2732Dim exprSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("{4, 5}", StringComparison.Ordinal)).Parent, CollectionInitializerSyntax) 2755Dim exprSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("{4, 5}", StringComparison.Ordinal)).Parent, CollectionInitializerSyntax) 2778Dim exprSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("{4, 5}", StringComparison.Ordinal)).Parent, CollectionInitializerSyntax) 2803Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("If False", StringComparison.Ordinal)).Parent, IfStatementSyntax) 2830Dim stmtSyntaxNode = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetRoot.ToFullString().IndexOf("Else", StringComparison.Ordinal)).Parent, ElseStatementSyntax) 5013Dim node = DirectCast(root.FindToken(root.ToFullString().IndexOf("Return", StringComparison.Ordinal)).Parent, StatementSyntax) 5047Dim node = DirectCast(root.FindToken(root.ToFullString().IndexOf("Return", StringComparison.Ordinal)).Parent, StatementSyntax) 5083Dim node = DirectCast(root.FindToken(root.ToFullString().IndexOf("Static", StringComparison.Ordinal)).Parent, StatementSyntax)
FlowAnalysis\TryLockUsingStatementTests.vb (2)
1671Dim statement = DirectCast(compilation.SyntaxTrees.First().GetCompilationUnitRoot().FindToken(index).Parent, StatementSyntax) 1700Dim statement = DirectCast(compilation.SyntaxTrees.First().GetCompilationUnitRoot().FindToken(index).Parent, StatementSyntax)
Semantics\Conversions.vb (6)
4057Dim variableDeclarator = CType(tree.GetCompilationUnitRoot().FindToken(source.IndexOf("ii", StringComparison.Ordinal)).Parent.Parent, VariableDeclaratorSyntax) 4066Dim sourceExpression1 = CType(tree.GetCompilationUnitRoot().FindToken(source.IndexOf("jj)", StringComparison.Ordinal)).Parent, ExpressionSyntax) 4072Dim sourceExpression2 = CType(tree.GetCompilationUnitRoot().FindToken(source.IndexOf("ss)", StringComparison.Ordinal)).Parent, ExpressionSyntax) 4143Dim variableDeclarator = CType(tree.GetCompilationUnitRoot().FindToken(source.IndexOf("ii", StringComparison.Ordinal)).Parent.Parent, VariableDeclaratorSyntax) 4152Dim sourceExpression1 = CType(tree.GetCompilationUnitRoot().FindToken(source.IndexOf("jj)", StringComparison.Ordinal)).Parent, ExpressionSyntax) 4158Dim sourceExpression2 = CType(tree.GetCompilationUnitRoot().FindToken(source.IndexOf("ss)", StringComparison.Ordinal)).Parent, ExpressionSyntax)
Semantics\GetSemanticInfoTests.vb (12)
3822Dim syntaxNode = compilation.SyntaxTrees().Single().GetCompilationUnitRoot().FindToken(position).Parent.Parent.Parent.DescendantNodesAndSelf.OfType(Of GroupAggregationSyntax).Single() 3845Dim syntaxNode = compilation.SyntaxTrees().Single().GetCompilationUnitRoot().FindToken(position).Parent.DescendantNodesAndSelf.OfType(Of LabelSyntax).Single() 4427Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 6149Dim expr = tokens.Single(Function(t) t.Kind = SyntaxKind.TrueKeyword).Parent 6154expr = tokens.Single(Function(t) t.Kind = SyntaxKind.FalseKeyword).Parent 6211Dim expr = tokens.Single(Function(t) t.Kind = SyntaxKind.TrueKeyword).Parent 6216expr = tokens.Single(Function(t) t.Kind = SyntaxKind.FalseKeyword).Parent 6221expr = tokens.First(Function(t) t.Kind = SyntaxKind.IdentifierToken AndAlso t.Text = "P").Parent 6251Dim expr = tokens.Single(Function(t) t.Kind = SyntaxKind.TrueKeyword).Parent 6281Dim expr = tokens.Single(Function(t) t.Kind = SyntaxKind.TrueKeyword).Parent 6311Dim expr = tokens.Single(Function(t) t.Kind = SyntaxKind.TrueKeyword).Parent 6349Dim expr = tokens.Single(Function(t) t.Kind = SyntaxKind.TrueKeyword).Parent
Semantics\QueryExpressions_SemanticModel.vb (3)
3817Dim node = DirectCast(tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToString().IndexOf("aggr4(4)", StringComparison.Ordinal)).Parent, FunctionAggregationSyntax) 3886Dim node = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToString().IndexOf("n As", StringComparison.Ordinal)).Parent.Parent.DescendantNodes().OfType(Of IdentifierNameSyntax)().First() 3918Dim node = tree.GetCompilationUnitRoot().FindToken(tree.GetCompilationUnitRoot().ToString().IndexOf("By", StringComparison.Ordinal)).Parent.Parent.DescendantNodes().OfType(Of IdentifierNameSyntax)().First()
Semantics\VariableTypeInference.vb (1)
703Dim node = CompilationUtils.FindTokenFromText(tree, textToFind).Parent
Microsoft.CodeAnalysis.VisualBasic.Symbol.UnitTests (19)
DocumentationComments\DocCommentTests.vb (1)
12091Dim node = TryCast(token.Parent, TNode)
SymbolDisplay\SymbolDisplayTests.vb (1)
6007Dim member = token.Parent.FirstAncestorOrSelf(Of MethodBlockBaseSyntax)()
SymbolsTests\AnonymousTypes\AnonymousTypesSemanticsTests.vb (16)
109Dim declaratorQ = tree.GetRoot().FindToken(posQ).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 116Dim declaratorX = tree.GetRoot().FindToken(posX).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 123Dim declaratorZ = tree.GetRoot().FindToken(posZ).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 245Dim declaratorW = tree.GetRoot().FindToken(posW).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 250Dim declaratorZF = tree.GetRoot().FindToken(posZF).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 260Dim declaratorZL = tree.GetRoot().FindToken(posZL).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 316Dim declaratorT = tree.GetRoot().FindToken(posT).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 321Dim declaratorA = tree.GetRoot().FindToken(posA).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 323tree.GetRoot().FindToken(sub2).Parent.Parent.GetLocation, 331Dim declaratorB = tree.GetRoot().FindToken(posB).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 333tree.GetRoot().FindToken(sub4).Parent.Parent.GetLocation, 383Dim declaratorT = tree.GetRoot().FindToken(posT).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 388Dim declaratorA = tree.GetRoot().FindToken(posA).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 390tree.GetRoot().FindToken(sub1).Parent.Parent.GetLocation, 398Dim declaratorB = tree.GetRoot().FindToken(posB).Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 401tree.GetRoot().FindToken(sub2).Parent.Parent.GetLocation,
SymbolsTests\Source\BindingsTests.vb (1)
32Dim node = token.Parent
Microsoft.CodeAnalysis.VisualBasic.Syntax.UnitTests (20)
Parser\ParseExpression.vb (1)
1161Dim lambda = DirectCast(subKeyword.Parent.Parent, MultiLineLambdaExpressionSyntax)
Syntax\SyntaxFactsTest.vb (4)
1038If currentToken = currentToken.Parent.AncestorsAndSelf.OfType(Of StatementSyntax).First.GetLastToken() OrElse 1082currentToken <> currentToken.Parent.AncestorsAndSelf.OfType(Of StatementSyntax).First.GetLastToken() AndAlso 1147Dim kindAndParentKind = Tuple.Create(currentToken.Kind(), currentToken.Parent.Kind()) 1161"Expected diagnostic when adding line continuation to " & currentToken.Kind.ToString() & " in " & currentToken.Parent.ToString() & ".")
TestSyntaxNodes.vb (15)
1817Dim foundDocComment = result.Parent.Parent.Parent.Parent 2004Dim tk_nonzero1 = CType(trivia.First().Token.Parent.Parent.Parent, SyntaxNodeOrToken).GetNextSibling() 2536Dim b = expr.DescendantTokens().Where(Function(t) t.ToString() = "b").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ArgumentSyntax)()).FirstOrDefault() 2550Dim n = expr.DescendantTokens().Where(Function(t) t.ToString() = "b").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ArgumentSyntax)()).FirstOrDefault() 2564Dim b = expr.DescendantTokens().Where(Function(t) t.ToString() = "b").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ArgumentSyntax)()).FirstOrDefault() 2578Dim b = expr.DescendantTokens().Where(Function(t) t.ToString() = "b").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ArgumentSyntax)()).FirstOrDefault() 2591Dim n = expr.DescendantTokens().Where(Function(t) t.ToString() = "a").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ArgumentSyntax)()).FirstOrDefault() 2604Dim n = expr.DescendantTokens().Where(Function(t) t.ToString() = "a").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ArgumentSyntax)()).FirstOrDefault() 2617Dim n = expr.DescendantTokens().Where(Function(t) t.ToString() = "c").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ArgumentSyntax)()).FirstOrDefault() 2641Dim n = cu.DescendantTokens().Where(Function(t) t.ToString() = "A").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of AttributeListSyntax)()).FirstOrDefault() 2666Dim n = cu.DescendantTokens().Where(Function(t) t.ToString() = "C").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of AttributeListSyntax)()).FirstOrDefault() 2691Dim n = cu.DescendantTokens().Where(Function(t) t.ToString() = "B").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of AttributeListSyntax)()).FirstOrDefault() 2722Dim n = cu.DescendantTokens().Where(Function(t) t.ToString() = "Goo").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ClassBlockSyntax)()).FirstOrDefault() 2761Dim n = cu.DescendantTokens().Where(Function(t) t.ToString() = "Goo").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ClassBlockSyntax)()).FirstOrDefault() 2803Dim n = cu.DescendantTokens().Where(Function(t) t.ToString() = "Goo").Select(Function(t) t.Parent.FirstAncestorOrSelf(Of ClassBlockSyntax)()).FirstOrDefault()
Microsoft.CodeAnalysis.VisualBasic.Test.Utilities (10)
CompilationTestUtils.vb (7)
418Dim node = token.Parent 497Dim node = token.Parent 661Return FindTokenFromText(tree, textToFind).Parent 1075Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 1089Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 1103Dim node = CompilationUtils.FindTokenFromText(tree, stringInDecl).Parent 1126node = tree.GetRoot().FindToken(pos).Parent
SemanticModelTestBase.vb (3)
17Dim node = DirectCast(CompilationUtils.FindTokenFromText(tree, textToFind).Parent, VisualBasicSyntaxNode) 34Dim node = token.Parent 75Dim node = token.Parent
Microsoft.CodeAnalysis.VisualBasic.Workspaces (256)
CallStatementSyntaxExtensions.vb (1)
15nextToken.Parent.IsKind(SyntaxKind.PredefinedType)) AndAlso
CaseCorrection\VisualBasicCaseCorrectionService.Rewriter.vb (7)
72If newToken.IsMissing OrElse TypeOf newToken.Parent Is ArgumentSyntax OrElse _semanticModel Is Nothing Then 76If token.Parent.IsPartOfStructuredTrivia() Then 77Dim identifierSyntax = TryCast(token.Parent, IdentifierNameSyntax) 93Dim methodDeclaration = TryCast(token.Parent, MethodStatementSyntax) 130Dim nameColonEquals = TryCast(token.Parent?.Parent, NameColonEqualsSyntax) 138Dim symbol = GetAliasOrAnySymbol(_semanticModel, token.Parent, _cancellationToken) 143Dim expression = TryCast(token.Parent, ExpressionSyntax)
Classification\ClassificationHelpers.vb (10)
36Select Case token.Parent.Kind 58If token.Parent Is Nothing Then 63If token.Parent.IsKind( 74IsControlStatementKind(token.Parent.Kind) 177If TypeOf token.Parent Is AttributeListSyntax Then 190Dim parent = identifier.Parent 243Dim parent = identifier.Parent 272token.Parent.IsKind(SyntaxKind.InterpolatedStringExpression) 307Select Case identifier.Parent.Kind 317Throw ExceptionUtilities.UnexpectedValue(identifier.Parent.Kind)
Classification\Worker.DocumentationCommentClassifier.vb (1)
133Select Case token.Parent.Kind
CodeCleanup\Providers\AddMissingTokensCodeCleanupProvider.vb (3)
572If TryCast(originalToken.Parent, TypeArgumentListSyntax)?.OfKeyword = originalToken Then 574ElseIf TryCast(originalToken.Parent, TypeParameterListSyntax)?.OfKeyword = originalToken Then 576ElseIf TryCast(originalToken.Parent, ContinueStatementSyntax)?.BlockKeyword = originalToken Then
CodeCleanup\Providers\RemoveUnnecessaryLineContinuationCodeCleanupProvider.vb (2)
256Return TypeOf token.Parent Is LabelStatementSyntax 260Dim node = token.Parent
CodeCleanup\VisualBasicCodeCleanerService.vb (2)
65Dim parentMultiLineNode = GetMultiLineContainer(token.Parent) 94Return Not VisualBasicSyntaxFacts.Instance.IsOnSingleLine(t.Parent, fullSpan:=False)
CodeGeneration\VisualBasicCodeGenerationService.vb (2)
502Dim oldBlock = token.Parent.GetContainingMultiLineExecutableBlocks().First 506Dim oldStatement = token.Parent.GetAncestorsOrThis(Of StatementSyntax)().First(AddressOf oldBlockStatementsSet.Contains)
DirectiveSyntaxExtensions.vb (1)
81node = node.ParentTrivia.Token.Parent
Formatting\DefaultOperationProvider.vb (19)
56If previousToken.Parent Is Nothing Then 68ElseIf lastTrivia.RawKind = SyntaxKind.LineContinuationTrivia AndAlso previousToken.Parent.GetAncestorsOrThis(Of SyntaxNode)().Any(Function(node As SyntaxNode) IsSingleLineIfOrElseClauseSyntax(node)) Then 79If previousToken.Kind = SyntaxKind.GreaterThanToken AndAlso previousToken.Parent IsNot Nothing AndAlso TypeOf previousToken.Parent Is AttributeListSyntax Then 83If previousToken.Parent.Parent IsNot Nothing AndAlso TypeOf previousToken.Parent.Parent Is ParameterSyntax Then 90If currentToken.Kind = SyntaxKind.LessThanToken AndAlso currentToken.Parent IsNot Nothing AndAlso TypeOf currentToken.Parent Is AttributeListSyntax Then 94currentToken.Parent.Parent IsNot Nothing AndAlso TypeOf currentToken.Parent.Parent Is ParameterSyntax Then 107Dim xmlDeclaration = TryCast(previousToken.Parent, XmlDeclarationSyntax) 112If TypeOf previousToken.Parent Is XmlNodeSyntax OrElse TypeOf currentToken.Parent Is XmlNodeSyntax Then 127TypeOf currentToken.Parent Is ImportsStatementSyntax AndAlso 131Dim currentImports = DirectCast(currentToken.Parent, ImportsStatementSyntax) 181Dim xmlDeclaration = TryCast(currentToken.Parent, XmlDeclarationSyntax) 189Dim startTag = TryCast(currentToken.Parent, XmlElementStartTagSyntax) 197Dim emptyTag = TryCast(currentToken.Parent, XmlEmptyElementSyntax) 210TypeOf previousToken.Parent Is LabelStatementSyntax AndAlso
Formatting\Engine\Trivia\VisualBasicTriviaFormatter.vb (1)
118Token2.Kind = SyntaxKind.CaseKeyword AndAlso Token2.Parent.IsKind(SyntaxKind.CaseStatement) Then
Formatting\FormattingHelpers.vb (55)
13token.Parent.Kind = SyntaxKind.AttributeList AndAlso 14DirectCast(token.Parent, AttributeListSyntax).LessThanToken.Equals(token) Then 24token.Parent.Kind = SyntaxKind.AttributeList AndAlso 25DirectCast(token.Parent, AttributeListSyntax).GreaterThanToken.Equals(token) Then 33If token.Parent Is Nothing Then 39token.Parent.Kind = SyntaxKind.XmlString AndAlso 40(DirectCast(token.Parent, XmlStringSyntax).StartQuoteToken.Equals(token) OrElse 41DirectCast(token.Parent, XmlStringSyntax).EndQuoteToken.Equals(token)) Then 49If token.Parent Is Nothing Then 53If token.Parent.Kind = SyntaxKind.XmlString AndAlso 54Not DirectCast(token.Parent, XmlStringSyntax).StartQuoteToken.Equals(token) AndAlso 55Not DirectCast(token.Parent, XmlStringSyntax).EndQuoteToken.Equals(token) Then 87If token.Parent Is Nothing Then 93token.Parent.Kind = SyntaxKind.XmlEmptyElement Then 94Dim xmlElement = DirectCast(token.Parent, XmlEmptyElementSyntax) 104token.Parent.Kind = SyntaxKind.XmlAttributeAccessExpression Then 105Dim xmlMemberAccess = DirectCast(token.Parent, XmlMemberAccessExpressionSyntax) 115token.Parent.Kind = SyntaxKind.XmlPrefix Then 116Dim xmlElement = DirectCast(token.Parent, XmlPrefixSyntax) 126token.Parent.Kind = SyntaxKind.XmlAttribute Then 127Dim xmlElement = DirectCast(token.Parent, XmlAttributeSyntax) 137token.Parent.Kind = SyntaxKind.XmlCrefAttribute Then 138Dim xmlElement = DirectCast(token.Parent, XmlCrefAttributeSyntax) 148token.Parent.Kind = SyntaxKind.XmlNameAttribute Then 149Dim xmlElement = DirectCast(token.Parent, XmlNameAttributeSyntax) 159token.Parent.Kind = SyntaxKind.XmlNamespaceImportsClause Then 160Dim xmlElement = DirectCast(token.Parent, XmlNamespaceImportsClauseSyntax) 170token.Parent.Kind = SyntaxKind.XmlNamespaceImportsClause Then 171Dim xmlElement = DirectCast(token.Parent, XmlNamespaceImportsClauseSyntax) 181token.Parent.Kind = SyntaxKind.XmlBracketedName Then 182Dim xmlBracketedName = DirectCast(token.Parent, XmlBracketedNameSyntax) 192token.Parent.Kind = SyntaxKind.XmlBracketedName Then 193Dim xmlBracketedName = DirectCast(token.Parent, XmlBracketedNameSyntax) 201If token.Parent.Parent Is Nothing Then 207token.Parent.Parent.Kind = SyntaxKind.XmlElement Then 208Dim xmlElement = DirectCast(token.Parent.Parent, XmlElementSyntax) 218token.Parent.Parent.Kind = SyntaxKind.XmlElement Then 219Dim xmlElement = DirectCast(token.Parent.Parent, XmlElementSyntax) 229If token.Kind = SyntaxKind.GreaterThanToken AndAlso IsGreaterThanInXmlTag(token.Parent, token) Then 255Return TypeOf currentToken.Parent Is NullableTypeSyntax OrElse 256TypeOf currentToken.Parent Is ModifiedIdentifierSyntax 264Return TypeOf previousToken.Parent Is AttributeTargetSyntax 273Dim memberAccess = TryCast(token.Parent, MemberAccessExpressionSyntax) 278If token.Parent.Parent Is Nothing Then 283memberAccess = TryCast(token.Parent, MemberAccessExpressionSyntax) 292Dim argumentList = TryCast(token.Parent, ArgumentListSyntax) 301Dim binaryCondition = TryCast(token.Parent, BinaryConditionalExpressionSyntax) 310Dim ternaryCondition = TryCast(token.Parent, TernaryConditionalExpressionSyntax) 319Dim xmlDeclaration = TryCast(token.Parent, XmlDeclarationSyntax) 332Dim memberAccess = TryCast(token.Parent, MemberAccessExpressionSyntax) 337Dim xmlMemberAccess = TryCast(token.Parent, XmlMemberAccessExpressionSyntax) 350Dim memberAccess = TryCast(token.Parent, MemberAccessExpressionSyntax) 359Dim namedFieldInitializer = TryCast(token.Parent, NamedFieldInitializerSyntax) 368If token.Parent.IsKind(SyntaxKind.OperatorStatement) Then 369Return DirectCast(token.Parent, OperatorStatementSyntax).OperatorToken = token
Formatting\Rules\AdjustSpaceFormattingRule.vb (25)
93If TypeOf currentToken.Parent Is BinaryExpressionSyntax AndAlso DirectCast(currentToken.Parent, BinaryExpressionSyntax).Left.IsKind(SyntaxKind.XmlAttributeAccessExpression) OrElse 94currentToken.Parent.IsKind(SyntaxKind.SimpleAssignmentStatement) AndAlso DirectCast(currentToken.Parent, AssignmentStatementSyntax).Left.IsKind(SyntaxKind.XmlAttributeAccessExpression) Then 99If currentToken.Parent.IsKind(SyntaxKind.XmlDeclarationOption) Then 173If currentToken.Kind = SyntaxKind.OpenParenToken AndAlso TypeOf currentToken.Parent Is ArrayRankSpecifierSyntax Then 183If previousToken.Kind = SyntaxKind.CloseParenToken AndAlso TypeOf previousToken.Parent Is TypeParameterListSyntax AndAlso 184currentToken.Kind = SyntaxKind.OpenParenToken AndAlso TypeOf currentToken.Parent Is ParameterListSyntax Then 196previousToken.Parent.IsKind(SyntaxKind.ConditionalAccessExpression) Then 202currentToken.Parent.Kind = SyntaxKind.ConditionalAccessExpression Then 210If previousToken.Kind = SyntaxKind.ColonToken AndAlso TypeOf previousToken.Parent Is LabelStatementSyntax Then 223If previousToken.Kind = SyntaxKind.DollarSignDoubleQuoteToken AndAlso previousToken.Parent.IsKind(SyntaxKind.InterpolatedStringExpression) Then 228If currentToken.Kind = SyntaxKind.DoubleQuoteToken AndAlso currentToken.Parent.IsKind(SyntaxKind.InterpolatedStringExpression) Then 233If (currentToken.Kind = SyntaxKind.OpenBraceToken AndAlso currentToken.Parent.IsKind(SyntaxKind.Interpolation)) OrElse 234(previousToken.Kind = SyntaxKind.CloseBraceToken AndAlso previousToken.Parent.IsKind(SyntaxKind.Interpolation)) Then 239If (previousToken.Kind = SyntaxKind.OpenBraceToken AndAlso previousToken.Parent.IsKind(SyntaxKind.Interpolation)) OrElse 240(currentToken.Kind = SyntaxKind.CloseBraceToken AndAlso currentToken.Parent.IsKind(SyntaxKind.Interpolation)) Then 245If (previousToken.Kind = SyntaxKind.CommaToken AndAlso previousToken.Parent.IsKind(SyntaxKind.InterpolationAlignmentClause)) OrElse 246(currentToken.Kind = SyntaxKind.CommaToken AndAlso currentToken.Parent.IsKind(SyntaxKind.InterpolationAlignmentClause)) Then 251If (previousToken.Kind = SyntaxKind.ColonToken AndAlso previousToken.Parent.IsKind(SyntaxKind.InterpolationFormatClause)) OrElse 252(currentToken.Kind = SyntaxKind.ColonToken AndAlso currentToken.Parent.IsKind(SyntaxKind.InterpolationFormatClause)) Then 331TypeOf previousToken.Parent Is UnaryExpressionSyntax Then 347previousToken.Parent Is currentToken.Parent Then 352Dim labelStatement = TryCast(previousToken.Parent, LabelStatementSyntax)
Formatting\Rules\ElasticTriviaFormattingRule.vb (17)
114currentToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 115currentToken.Parent.Parent.Kind = SyntaxKind.ObjectCollectionInitializer Then 141currentToken.Parent.Kind = SyntaxKind.NamedFieldInitializer Then 148previousToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 149previousToken.Parent.Parent.Kind = SyntaxKind.ObjectCollectionInitializer Then 156previousToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 157previousToken.Parent.Parent.Kind = SyntaxKind.ObjectCollectionInitializer Then 164currentToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 165currentToken.Parent.Parent.Kind = SyntaxKind.CollectionInitializer Then 171If currentToken.Parent.Kind = SyntaxKind.ObjectMemberInitializer Then 177If currentToken.Parent.Kind = SyntaxKind.CollectionInitializer AndAlso 178currentToken.Parent.Parent.Kind = SyntaxKind.ObjectCollectionInitializer Then 185Dim attributeNode = TryCast(previousToken.Parent, AttributeListSyntax) 197TypeOf currentToken.Parent Is ParenthesizedExpressionSyntax Then 203If Not TypeOf currentToken.Parent Is EndBlockStatementSyntax Then 214If TypeOf previousToken.Parent Is XmlNodeSyntax Then 236If Not TypeOf token.Parent Is NameSyntax Then
Formatting\Rules\NodeBasedFormattingRule.vb (4)
141Item1PreviousToken.Parent.IsKind(SyntaxKind.XmlElementEndTag)) Then 200Dim outerBlock = firstTokenOfInnerBlock.Parent 213(ReferenceEquals(outerBlock, firstTokenOfInnerBlock.Parent) OrElse 281If TypeOf previousToken.Parent Is XmlElementSyntax Then
Formatting\Rules\StructuredTriviaFormattingRule.vb (4)
37If TypeOf previousToken.Parent Is StructuredTriviaSyntax OrElse TypeOf currentToken.Parent Is StructuredTriviaSyntax Then 41If TypeOf previousToken.Parent Is DirectiveTriviaSyntax OrElse TypeOf currentToken.Parent Is DirectiveTriviaSyntax Then
InvocationExpressionSyntaxExtensions.vb (1)
28lastExpressionToken.Parent.IsKind(SyntaxKind.ArgumentList) Then
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Extensions\SyntaxTokenExtensions.vb\SyntaxTokenExtensions.vb (5)
50Dim expression = TryCast(token.Parent, ExpressionSyntax) 58Return TypeOf token.Parent Is SkippedTokensTriviaSyntax 63Return token.Parent.FirstAncestorOrSelf(predicate) 116Return token.Parent IsNot Nothing AndAlso 117token.Parent.AncestorsAndSelf().Any(Function(n) n Is node)
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\VisualBasic\Extensions\SyntaxTreeExtensions.vb\SyntaxTreeExtensions.vb (2)
51Dim current = token.Parent 361Dim statement = token.Parent.FirstAncestorOrSelf(Of StatementSyntax)()
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\ContextQuery\SyntaxTokenExtensions.vb\SyntaxTokenExtensions.vb (4)
60Dim allowsImplicitLineContinuation = token.Parent IsNot Nothing AndAlso 105Return targetToken.Parent.IsKind(SyntaxKind.BadDirectiveTrivia) 110targetToken.GetPreviousToken().Parent.IsKind(SyntaxKind.BadDirectiveTrivia) 128Dim argumentList = TryCast(token.Parent, ArgumentListSyntax)
J\s\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\Extensions\ContextQuery\SyntaxTreeExtensions.vb\SyntaxTreeExtensions.vb (23)
125If targetToken.Kind = SyntaxKind.None OrElse targetToken.Parent Is Nothing Then 177If token.Kind = SyntaxKind.GreaterThanToken AndAlso token.Parent.Kind = SyntaxKind.AttributeList Then 248If targetToken.Parent.IsKind(SyntaxKind.ParameterList) AndAlso 255If targetToken.Parent.IsKind(SyntaxKind.Parameter) AndAlso 322If targetToken.Parent.IsKind(SyntaxKind.ArgumentList) AndAlso 323TypeOf targetToken.Parent.Parent Is NewExpressionSyntax Then 325Dim symbolInfo = semanticModel.GetSymbolInfo(DirectCast(targetToken.Parent.Parent, NewExpressionSyntax).Type(), cancellationToken) 443targetToken.Parent.IsKind(SyntaxKind.ParameterList) AndAlso 444TypeOf targetToken.Parent.Parent Is LambdaHeaderSyntax Then 450targetToken.Parent.IsKind(SyntaxKind.ArgumentList, SyntaxKind.CollectionInitializer, SyntaxKind.EraseStatement) Then 470targetToken.Parent.IsKind(SyntaxKind.QualifiedName) AndAlso 471targetToken.Parent.Parent.IsKind(SyntaxKind.Attribute) Then 531Dim parent = token.Parent 549Dim possibleTuple = token.Parent 672If targetToken.Kind = SyntaxKind.None OrElse targetToken.Parent Is Nothing Then 686Dim ancestor = targetToken.Parent 722If targetToken.Parent.FirstAncestorOrSelf(Of AggregateClauseSyntax)() Is Nothing AndAlso 723targetToken.Parent.FirstAncestorOrSelf(Of GroupByClauseSyntax)() Is Nothing AndAlso 724targetToken.Parent.FirstAncestorOrSelf(Of GroupJoinClauseSyntax)() Is Nothing Then 779Not targetToken.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression) Then 784Dim memberAccess = DirectCast(targetToken.Parent, MemberAccessExpressionSyntax) 1080Return tokenOnLeftOfPosition.Parent.IsKind(SyntaxKind.ParenthesizedExpression, 1085tokenOnLeftOfPosition.Parent.IsKind(SyntaxKind.TupleExpression, SyntaxKind.TupleType)
ParenthesizedExpressionSyntaxExtensions.vb (9)
14Dim query = token.Parent.FirstAncestorOrSelf(Of QueryExpressionSyntax)() 18Dim invocationAtLast = token.Parent.FirstAncestorOrSelf(Of InvocationExpressionSyntax)() 29Dim variableDeclarator = token.Parent.FirstAncestorOrSelf(Of VariableDeclaratorSyntax)() 35Dim lambda = token.Parent.FirstAncestorOrSelf(Of SingleLineLambdaExpressionSyntax)() 425Dim lastStatement = lastToken.Parent.GetFirstEnclosingStatement() 440nextToken.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression) Then 512nextToken.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression)) AndAlso 514nextToken.Parent.IsKind(SyntaxKind.SelectStatement)) AndAlso 517nextToken.Parent.IsKind(SyntaxKind.DictionaryAccessExpression)) Then
Recommendations\VisualBasicRecommendationServiceRunner.vb (6)
36Dim node = _context.TargetToken.Parent 133Not _context.IsNameOfContext AndAlso _context.TargetToken.Parent.IsInStaticContext(), 145Not _context.TargetToken.Parent.IsKind(SyntaxKind.GetTypeExpression) Then 391Dim typeBlock = _context.TargetToken.Parent?.FirstAncestorOrSelf(Of TypeBlockSyntax)() 430token.Parent?.FirstAncestorOrSelf(Of InheritsStatementSyntax) IsNot Nothing 439token.Parent?.FirstAncestorOrSelf(Of ImplementsStatementSyntax) IsNot Nothing
Rename\VisualBasicRenameRewriterLanguageService.vb (10)
368Dim isMemberGroupReference = _semanticFactsService.IsInsideNameOfExpression(_semanticModel, token.Parent, _cancellationToken) 402If TypeOf token.Parent Is SimpleNameSyntax AndAlso token.Kind <> SyntaxKind.GlobalKeyword AndAlso token.Parent.Parent.IsKind(SyntaxKind.QualifiedName, SyntaxKind.QualifiedCrefOperatorReference) Then 403Dim symbol = Me._speculativeModel.GetSymbolInfo(token.Parent, Me._cancellationToken).Symbol 523Dim parent = oldToken.Parent 703Dim methodBase = token.Parent.AncestorsAndSelf.Where(Function(s) TypeOf s Is MethodBlockBaseSyntax OrElse TypeOf s Is VariableDeclaratorSyntax) _ 747Dim containingMethod = token.Parent.FirstAncestorOrSelf(Of SyntaxNode)( 773Dim currentTypeParameter = token.Parent 819If token.Kind = SyntaxKind.ForKeyword AndAlso token.Parent.IsKind(SyntaxKind.ForEachStatement) Then 820Return ImmutableArray.Create(DirectCast(token.Parent, ForEachStatementSyntax).Expression.GetLocation())
SemanticModelExtensions.vb (3)
18Dim expression = TryCast(name.Parent, ExpressionSyntax) 33Dim expression = TryCast(name.Parent, ExpressionSyntax) 73Dim expression = TryCast(token.Parent, ExpressionSyntax)
Simplification\Reducers\AbstractVisualBasicReducer.AbstractReductionRewriter.vb (1)
122Dim parentNode = token.Parent
Simplification\Reducers\VisualBasicEscapingReducer.vb (1)
46Dim parent = identifier.Parent
SpecialFormattingOperation.vb (1)
28Dim attributeNode = TryCast(previousToken.Parent, AttributeListSyntax)
StatementSyntaxExtensions.vb (1)
731Return nextToken.Parent.FirstAncestorOrSelf(Of StatementSyntax)()
VisualBasicIndentationService.Indenter.vb (6)
159(containingToken.IsKind(SyntaxKind.CloseBraceToken) AndAlso token.Parent.IsKind(SyntaxKind.Interpolation)) Then 192If Not ContainingStatementHasDiagnostic(lastVisibleTokenOnPreviousLine.Parent) Then 205Dim visibleTokenOnCurrentLineParent = visibleTokenOnCurrentLine.Parent 313(TypeOf token.Parent Is ParameterListSyntax OrElse 314TypeOf token.Parent Is ArgumentListSyntax OrElse 315TypeOf token.Parent Is TypeParameterListSyntax)
VisualBasicIndentationService.vb (1)
96Dim startNode = token.Parent
VisualBasicSyntaxContext.vb (5)
140Dim asClause = TryCast(targetToken.Parent, AsClauseSyntax) 175isGenericConstraintContext:=targetToken.Parent.IsKind(SyntaxKind.TypeParameterSingleConstraintClause, SyntaxKind.TypeParameterMultipleConstraintClause), 184isOnArgumentListBracketOrComma:=targetToken.Parent.IsKind(SyntaxKind.ArgumentList), 206Dim collectionRange = TryCast(targetToken.Parent, CollectionRangeVariableSyntax) 271Return TypeOf targetToken.Parent Is DirectiveTriviaSyntax
VisualBasicSyntaxContextExtensions.vb (5)
65If targetToken.Kind = SyntaxKind.None OrElse targetToken.Parent Is Nothing Then 83Dim ancestor = context.TargetToken.Parent 119If token.Parent.IsKind(SyntaxKind.ArgumentList) AndAlso 120TypeOf token.Parent.Parent Is NewExpressionSyntax Then 122Dim symbolInfo = context.SemanticModel.GetSymbolInfo(DirectCast(token.Parent.Parent, NewExpressionSyntax).Type())
VisualBasicSyntaxFacts.vb (17)
111Return (IsUnaryExpressionOperatorToken(CType(token.Kind, SyntaxKind)) AndAlso (TypeOf token.Parent Is UnaryExpressionSyntax OrElse TypeOf token.Parent Is OperatorStatementSyntax)) OrElse 112(IsBinaryExpressionOperatorToken(CType(token.Kind, SyntaxKind)) AndAlso (TypeOf token.Parent Is BinaryExpressionSyntax OrElse TypeOf token.Parent Is OperatorStatementSyntax)) 253If TypeOf token.Parent Is IdentifierNameSyntax AndAlso token.HasMatchingText(SyntaxKind.NewKeyword) Then 254Dim memberAccess = TryCast(token.Parent.Parent, MemberAccessExpressionSyntax) 262If TypeOf token.Parent Is IdentifierNameSyntax AndAlso token.HasMatchingText(SyntaxKind.NewKeyword) Then 263Dim memberAccess = TryCast(token.Parent.Parent, MemberAccessExpressionSyntax) 287Return TypeOf token.Parent Is QueryClauseSyntax 289Return (TypeOf token.Parent Is QueryClauseSyntax) OrElse (token.Parent.IsKind(SyntaxKind.GroupAggregation)) 291Return TypeOf token.Parent Is JoinConditionSyntax 293Return TypeOf token.Parent Is OrderingSyntax 295Return TypeOf token.Parent Is CollectionRangeVariableSyntax 718Dim node = root.FindToken(position).Parent 1051Dim node = token.Parent 1519Dim parent = token.Parent
VisualBasicTypeInferenceService.TypeInferrer.vb (1)
131Dim parent = token.Parent
Microsoft.CodeAnalysis.VisualBasic.Workspaces.UnitTests (1)
VisualBasicSyntaxFactsServiceTests.vb (1)
544Dim node = tree.GetRoot().FindToken(position).Parent
Microsoft.CodeAnalysis.Workspaces (35)
BottomUpBaseIndentationFinder.cs (4)
231var current = token.Parent; 238current = ((IStructuredTriviaSyntax)current).ParentTrivia.Token.Parent; 249var startNode = token.Parent; 280var startNode = token.Parent;
CommonFormattingHelpers.cs (2)
275var parentNode = GetParentThatContainsGivenSpan(token.Parent, backwardPosition, forward: false); 306var parentNode = GetParentThatContainsGivenSpan(token.Parent, forwardPosition, forward: true);
DocumentExtensions.cs (1)
120var node = token.Parent!.AncestorsAndSelf().First(a => a.FullSpan.Contains(span));
FindSymbols\FindReferences\Finders\AbstractReferenceFinder.cs (2)
46? token.Parent 48parent ??= token.Parent!;
FindSymbols\FindReferences\Finders\AbstractReferenceFinder_GlobalSuppressions.cs (1)
185var attributeArgument = token.Parent?.Parent;
FindSymbols\FindReferences\Finders\AbstractTypeParameterSymbolReferenceFinder.cs (4)
46return syntaxFacts.IsIdentifierName(token.Parent) && 47syntaxFacts.IsObjectCreationExpression(token.Parent.Parent); 56Contract.ThrowIfNull(token.Parent?.Parent); 57var typeInfo = state.SemanticModel.GetTypeInfo(token.Parent.Parent, cancellationToken);
FormattingContext.InitialContextFinder.cs (1)
148var startNode = token.Parent;
SemanticModelExtensions.cs (1)
33=> semanticModel.GetSymbolInfo(token.Parent!, cancellationToken);
Shared\Extensions\SemanticModelExtensions.cs (5)
94(token.Parent?.RawKind == syntaxKinds.UsingStatement || token.Parent?.RawKind == syntaxKinds.LocalDeclarationStatement)) 96var usingStatement = token.Parent; 97declaredSymbol = semanticFacts.TryGetDisposeMethod(semanticModel, token.Parent, cancellationToken); 109aliasSymbol = semanticModel.GetAliasInfo(token.Parent!, cancellationToken);
SyntaxNodeExtensions.cs (1)
805parent = structuredTrivia.ParentTrivia.Token.Parent;
SyntaxTokenExtensions.cs (12)
19=> token.Parent?.FirstAncestorOrSelf(predicate); 27return token.Parent != null 28? token.Parent.AncestorsAndSelf().OfType<T>() 34return token.Parent != null 35? token.Parent.AncestorsAndSelf().Where(predicate) 45if (token1.Parent == null || token2.Parent == null) 50return token1.Parent.GetCommonRoot(token2.Parent); 55if (token.Parent is not T parentNode) 95? ((ICompilationUnitSyntax)token.Parent!.SyntaxTree!.GetRoot(CancellationToken.None)).EndOfFileToken 165=> token.Parent ?? throw new InvalidOperationException("Token's parent was null");
TreeData.StructuredTrivia.cs (1)
56var parent = _trivia.Token.Parent;
Microsoft.CodeAnalysis.Workspaces.MSBuild.UnitTests (3)
VisualStudioMSBuildWorkspaceTests.cs (3)
61var type = tree.GetRoot().DescendantTokens().First(t => t.ToString() == "class").Parent; 425var type = tree.GetRoot().DescendantTokens().First(t => t.ToString() == "class").Parent; 2813var type = tree.GetRoot().DescendantTokens().First(t => t.ToString() == "class").Parent;
Microsoft.VisualStudio.LanguageServices (2)
Venus\ContainedDocument.cs (2)
835var current = root.FindToken(visibleTextSpan.Start).Parent; 1004if (syntaxFact.IsSkippedTokensTrivia(token.Parent))
Microsoft.VisualStudio.LanguageServices.CSharp (41)
LanguageService\CSharpDebuggerIntelliSenseContext.cs (3)
75token.Parent.IsKind(SyntaxKind.Block) && 76token.Parent.Parent is MemberDeclarationSyntax) 82token.Parent.IsKind(SyntaxKind.Block))
LanguageService\CSharpHelpContextService.cs (36)
160if (token.Parent is TypeArgumentListSyntax) 166else if (token.Parent is NullableTypeSyntax && token.IsKind(SyntaxKind.QuestionToken)) 217token.Parent.IsKind(SyntaxKind.SuppressNullableWarningExpression)) 236if (token.IsKind(SyntaxKind.ColonToken) && token.Parent is NameColonSyntax) 244if (token.Parent.IsKind(SyntaxKind.EqualsValueClause)) 246if (token.Parent.Parent.IsKind(SyntaxKind.Parameter)) 251else if (token.Parent.Parent.IsKind(SyntaxKind.PropertyDeclaration)) 256else if (token.Parent.Parent.IsKind(SyntaxKind.EnumMemberDeclaration)) 261else if (token.Parent.Parent.IsKind(SyntaxKind.VariableDeclarator)) 267else if (token.Parent.IsKind(SyntaxKind.NameEquals)) 269if (token.Parent.Parent.IsKind(SyntaxKind.AnonymousObjectMemberDeclarator)) 274else if (token.Parent.Parent.IsKind(SyntaxKind.UsingDirective)) 279else if (token.Parent.Parent.IsKind(SyntaxKind.AttributeArgument)) 285else if (token.Parent.IsKind(SyntaxKind.LetClause)) 290else if (token.Parent is XmlAttributeSyntax) 308if (token.Parent.IsKind(SyntaxKind.FunctionPointerParameterList)) 315if (token.IsKind(SyntaxKind.QuestionToken) && token.Parent is ConditionalExpressionSyntax) 328token.Parent is (kind: SyntaxKind.TypeParameterList or SyntaxKind.TypeArgumentList)) 371if (token.Parent.GetAncestorOrThis<MethodDeclarationSyntax>() != null) 376else if (token.Parent.GetAncestorOrThis<TypeDeclarationSyntax>() != null) 385text = token.Parent.GetAncestorOrThis<TypeParameterConstraintClauseSyntax>() != null 398if (token.Parent is IdentifierNameSyntax { Parent: TypeConstraintSyntax { Parent: TypeParameterConstraintClauseSyntax } }) 422case SyntaxKind.UsingKeyword when token.Parent is UsingDirectiveSyntax: 427case SyntaxKind.StaticKeyword when token.Parent is UsingDirectiveSyntax: 430case SyntaxKind.ReturnKeyword when token.Parent.IsKind(SyntaxKind.YieldReturnStatement): 431case SyntaxKind.BreakKeyword when token.Parent.IsKind(SyntaxKind.YieldBreakStatement): 441return CSharpSyntaxFacts.Instance.GetModifiers(token.Parent).Any(t => t.IsKind(kind)); 464if (token.Parent is DefaultConstraintSyntax) 470if (token.Parent is DefaultSwitchLabelSyntax or GotoStatementSyntax) 476if (token.Parent is LineDirectiveTriviaSyntax) 483if (token.IsKind(SyntaxKind.ClassKeyword) && token.Parent is ClassOrStructConstraintSyntax) 489if (token.IsKind(SyntaxKind.StructKeyword) && token.Parent is ClassOrStructConstraintSyntax) 495if (token.IsKind(SyntaxKind.UsingKeyword) && token.Parent is UsingStatementSyntax or LocalDeclarationStatementSyntax) 501if (token.IsKind(SyntaxKind.SwitchKeyword) && token.Parent is SwitchExpressionSyntax) 514token.Parent?.Parent is VariableDeclarationSyntax declaration && token.Parent == declaration.Type)
Utilities\BlankLineInGeneratedMethodFormattingRule.cs (2)
27if (currentToken.Parent.Kind() == SyntaxKind.Block && 28currentToken.Parent.Parent.Kind() == SyntaxKind.MethodDeclaration)
Microsoft.VisualStudio.LanguageServices.Implementation (1)
CodeModel\FileCodeModel.cs (1)
596var parent = token.Parent;
Microsoft.VisualStudio.LanguageServices.UnitTests (9)
ChangeSignature\ChangeSignatureViewModelTests.vb (1)
467Dim symbol = (Await workspaceDoc.GetSemanticModelAsync()).GetDeclaredSymbol(token.Parent)
CodeModel\CSharp\SyntaxNodeKeyTests.vb (1)
241Dim node = tree.GetRoot().FindToken(cursorPosition).Parent
CommonControls\MemberSelectionViewModelTests.vb (1)
184Dim memberSymbol = (Await workspaceDoc.GetSemanticModelAsync()).GetDeclaredSymbol(token.Parent)
CommonControls\NewTypeDestinationSelectionViewModelTests.vb (1)
237Dim symbol = (Await workspaceDoc.GetSemanticModelAsync()).GetDeclaredSymbol(token.Parent)
ExtractInterface\ExtractInterfaceViewModelTests.vb (1)
300Dim symbol = (Await workspaceDoc.GetSemanticModelAsync()).GetDeclaredSymbol(token.Parent)
GoToDefinition\GoToDefinitionApiTests.vb (1)
29Dim symbol = root.FindToken(cursorPosition).Parent _
MoveStaticMembers\MoveStaticMembersViewModelTest.vb (1)
35Dim memberSymbol = (Await workspaceDoc.GetRequiredSemanticModelAsync(CancellationToken.None)).GetDeclaredSymbol(token.Parent)
PullMemberUp\PullMemberUpViewModelTest.vb (1)
256Dim memberSymbol = (Await workspaceDoc.GetSemanticModelAsync()).GetDeclaredSymbol(token.Parent)
RQName\RQNameTests.vb (1)
251symbol = (Await workspaceDoc.GetSemanticModelAsync()).GetDeclaredSymbol(token.Parent)
Microsoft.VisualStudio.LanguageServices.VisualBasic (3)
Help\VisualBasicHelpContextService.vb (1)
49visitor.Visit(token.Parent)
Help\VisualBasicHelpContextService.Visitor.vb (1)
948Dim symbol = _semanticModel.GetDeclaredSymbol(token.Parent, _cancellationToken)
LanguageService\VisualBasicDebuggerIntelliSenseContext.vb (1)
65Dim containingNode = token.Parent.AncestorsAndSelf().Where(Function(s) TypeOf s Is ExpressionSyntax OrElse