801 references to Parent
Microsoft.CodeAnalysis.CSharp (70)
Binder\Binder_QueryErrors.cs (2)
136for (CSharpSyntaxNode parent = node.Parent; parent != null; parent = parent.Parent) 152for (CSharpSyntaxNode parent = node.Parent; parent != null; parent = parent.Parent)
Binder\Binder_Statements.cs (2)
830if (declarationNode.Parent.Kind() == SyntaxKind.LocalDeclarationStatement && 1915hasUnsafeModifier: node.Parent?.Kind() == SyntaxKind.UnsafeStatement,
Binder\BinderFactory.BinderFactoryVisitor.cs (7)
267return VisitCore(parent.Parent); 277resultBinder = VisitCore(parent.Parent); 281var propertyOrEventDecl = parent.Parent.Parent; 441if (node.Parent.Kind() == SyntaxKind.CompilationUnit && syntaxTree.Options.Kind != SourceCodeKind.Regular) 1454curr = curr.Parent; 1466for (; !SyntaxFacts.IsDocumentationCommentTrivia(curr.Kind()); curr = curr.Parent)
Binder\ExpressionVariableFinder.cs (2)
55Debug.Assert(node.Parent is ConstructorInitializerSyntax || node.Parent is PrimaryConstructorBaseTypeSyntax);
Compilation\AttributeSemanticModel.cs (2)
70var parent = node.Parent; 73parent = parent.Parent;
Compilation\CSharpSemanticModel.cs (4)
94if (!isSpeculative && node.Parent != null && node.Parent.Kind() == SyntaxKind.NameEquals && node.Parent.Parent.Kind() == SyntaxKind.UsingDirective)
Compilation\InitializerSemanticModel.cs (1)
196this.Root == node.Parent /*field initializer*/;
Compilation\MemberSemanticModel.cs (9)
1555if (current.Parent == null || current.Parent.Kind() != SyntaxKind.LocalFunctionStatement) 2181return node.Parent; 2213var parent = node.Parent; 2238var grandparent = parent.Parent; 2283CSharpSyntaxNode? parent = node.Parent; 2304var pp = parent.Parent; 2323case { RawKind: (int)SyntaxKind.SimpleMemberAccessExpression, Parent.RawKind: (int)SyntaxKind.InvocationExpression }: 2324bindableParent = bindableParent.Parent;
Compilation\SyntaxTreeSemanticModel.cs (18)
247else if (node.Parent.Kind() == SyntaxKind.XmlNameAttribute && (attrSyntax = (XmlNameAttributeSyntax)node.Parent).Identifier == node) 942return GetOrAddModel((CompilationUnitSyntax)memberDecl.Parent); 964return GetMemberModel(memberDecl.Parent); 1119ExceptionUtilities.UnexpectedValue(node.Parent); 1123switch (node.Parent.Kind()) 1127var variableDecl = (VariableDeclaratorSyntax)node.Parent; 1140var propertyDecl = (PropertyDeclarationSyntax)node.Parent; 1153ParameterSyntax parameterDecl = (ParameterSyntax)node.Parent; 1168var enumDecl = (EnumMemberDeclarationSyntax)node.Parent; 1180throw ExceptionUtilities.UnexpectedValue(node.Parent.Kind()); 1189if (node.Parent is BasePropertyDeclarationSyntax) 1196ExceptionUtilities.UnexpectedValue(node.Parent); 1211var parent = node.Parent; 1607var propertyOrEventDecl = declarationSyntax.Parent.Parent; 2357if (memberDeclaration.Parent.Kind() == SyntaxKind.CompilationUnit) 2381var container = GetDeclaredNamespaceOrType(memberDeclaration.Parent);
Compiler\MethodCompiler.cs (2)
2244var parent = child.Parent; 2249parent = child.Parent;
DocumentationComments\SourceDocumentationCommentUtils.cs (1)
53curr = curr.Parent;
Parser\LanguageParser.cs (3)
141return node != null ? node.Parent : null; 2470return (this.CurrentNode.Parent is Syntax.CompilationUnitSyntax); 4752CSharp.CSharpSyntaxNode grandparent = parent.Parent;
Symbols\Source\SourceEventSymbol.cs (4)
165Debug.Assert(syntax.Parent?.Parent is not null); 166return (EventFieldDeclarationSyntax)syntax.Parent.Parent;
Symbols\Source\SourceMemberFieldSymbol.cs (2)
419return (BaseFieldDeclarationSyntax)declarator.Parent.Parent;
Syntax\CSharpSyntaxNode.cs (3)
70var parent = node.Parent; 405curr = curr.Parent; 522var parent = this.Parent;
Syntax\NamespaceDeclarationSyntaxReference.cs (1)
37node = node.Parent;
Syntax\SyntaxExtensions.cs (2)
262return node.Parent != null && IsInContextWhichNeedsDynamicAttribute(node.Parent);
Syntax\SyntaxFactory.cs (5)
2152CSharpSyntaxNode? parent = node.Parent; 2199CSharpSyntaxNode? grandparent = parent.Parent; 2240if (parent.Parent.IsKind(SyntaxKind.Subpattern)) 2242return parent.Parent; 2265currentNode = currentNode.Parent;
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (3)
RefactoringHelpers\RefactoringHelpersTests.cs (3)
1102""", n => n.Parent is TupleExpressionSyntax); 1130""", n => n.Parent is TupleExpressionSyntax); 1534""", predicate: n => n.Parent is TupleExpressionSyntax);
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (97)
CodeGen\CodeGenDeconstructTests.cs (61)
1511Assert.Equal("(x, y) = new C(1)", tuple1.Parent.ToString()); 1516Assert.Equal("(x, y) = new C(2)", tuple2.Parent.ToString()); 1564Assert.Equal("(x, y) = new C()", tuple.Parent.ToString()); 3630return (decl.Parent as DeclarationExpressionSyntax)?.Type; 3757var x34Var = (DeclarationExpressionSyntax)x3.Parent.Parent; 3851var x12Var = (DeclarationExpressionSyntax)x1.Parent.Parent; 4036var x12Var = (DeclarationExpressionSyntax)x1.Parent.Parent; 4144var x12Var = (DeclarationExpressionSyntax)x1.Parent.Parent; 4227var x12Var = (DeclarationExpressionSyntax)x1.Parent.Parent; 4338var x12Var = (DeclarationExpressionSyntax)x1.Parent.Parent; 4459var x23Var = (DeclarationExpressionSyntax)x2.Parent.Parent; 4605var x23Var = (DeclarationExpressionSyntax)x2.Parent.Parent; 5192var x23Var = (DeclarationExpressionSyntax)x2.Parent.Parent; 5739var x123Var = (DeclarationExpressionSyntax)x1.Parent.Parent; 5781var x123Var = (DeclarationExpressionSyntax)x1.Parent.Parent; 5911var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 5919var declaration2 = (DeclarationExpressionSyntax)discard2.Parent; 5925var declaration3 = (DeclarationExpressionSyntax)discard3.Parent.Parent; 6255Assert.Equal("(_, var x)", discard.Parent.Parent.ToString()); 6309var tuple1 = (TupleExpressionSyntax)discard1.Parent.Parent; 6339var tuple1 = (DeclarationExpressionSyntax)discard1.Parent.Parent; 6368Assert.Equal("(_, x)", discard.Parent.Parent.ToString()); 6398var declaration1 = (DeclarationExpressionSyntax)discard1.Parent.Parent; 6404Assert.Equal("(_, (var y, int z))", discard2.Parent.Parent.ToString()); 6444var tuple = (TupleExpressionSyntax)refs.ElementAt(0).Parent.Parent; 6861var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 6867var declaration2 = (DeclarationExpressionSyntax)discard2.Parent; 6872var tuple = (TupleExpressionSyntax)declaration1.Parent.Parent; 6933var nestedDeclaration = (DeclarationExpressionSyntax)discard2.Parent.Parent; 6940var tuple = (TupleExpressionSyntax)discard2.Parent.Parent.Parent.Parent; 6979var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 6988var declaration2 = (DeclarationExpressionSyntax)discard2.Parent; 6994Assert.Equal("_", discard3.Parent.ToString()); 7007var nestedDeclaration = (DeclarationExpressionSyntax)discard4.Parent.Parent; 8651Assert.Equal("((short, short))((int, int))(1L, 2L)", node.Parent.ToString()); 8653compilation.VerifyOperationTree(node.Parent, expectedOperationTree:
CodeGen\CodeGenTupleTest.cs (32)
8352Assert.Equal("(System.Int16 c, System.String d)?", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8353Assert.Equal("(System.Int16 a, System.String b)?", model.GetTypeInfo(node.Parent).ConvertedType.ToTestDisplayString()); 8354Assert.Equal(Conversion.Identity, model.GetConversion(node.Parent)); 8457Assert.Equal("(System.Int16 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8458Assert.Equal("(System.Int16 a, System.String b)?", model.GetTypeInfo(node.Parent).ConvertedType.ToTestDisplayString()); 8459Assert.Equal(ConversionKind.ImplicitNullable, model.GetConversion(node.Parent).Kind); 8484var node = nodes.OfType<ParenthesizedExpressionSyntax>().Single().Parent; 8518var node = nodes.OfType<ParenthesizedExpressionSyntax>().Single().Parent; 8601Assert.Equal("(System.Int32 c, System.String d)?", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8602Assert.Equal("(System.Int32 a, System.String b)?", model.GetTypeInfo(node.Parent).ConvertedType.ToTestDisplayString()); 8603Assert.Equal(Conversion.Identity, model.GetConversion(node.Parent)); 8636Assert.Equal("(System.Int32 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8637Assert.Equal("(System.Int32 a, System.String b)?", model.GetTypeInfo(node.Parent).ConvertedType.ToTestDisplayString()); 8638Assert.Equal(ConversionKind.ImplicitNullable, model.GetConversion(node.Parent).Kind); 8779Assert.Equal("(System.Int16 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8780Assert.Equal("(System.Int16 a, System.String b)", model.GetTypeInfo(node.Parent).ConvertedType.ToTestDisplayString()); 8781Assert.Equal(Conversion.Identity, model.GetConversion(node.Parent)); 8852Assert.Equal("(System.Int16 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8853Assert.Equal("(System.Int16 a, System.String b)", model.GetTypeInfo(node.Parent).ConvertedType.ToTestDisplayString()); 8854Assert.Equal(Conversion.Identity, model.GetConversion(node.Parent)); 8962Assert.Equal("(System.Int16 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8963Assert.Equal("(System.Int16 a, System.String b)", model.GetTypeInfo(node.Parent).ConvertedType.ToTestDisplayString()); 8964Assert.Equal(Conversion.Identity, model.GetConversion(node.Parent)); 13975var nameofArg = ((InvocationExpressionSyntax)nameofNode.Parent).ArgumentList.Arguments.Single().Expression; 24184Assert.Equal("tuple.elem2 = 23", nodes[0].Parent.Parent.ToString()); 24187Assert.Equal("elem2 = 10", nodes[1].Parent.ToString()); 24190Assert.Equal("(tuple.elem2)", nodes[2].Parent.Parent.Parent.ToString()); 24193Assert.Equal("(elem2)", nodes[3].Parent.Parent.ToString());
CodeGen\ObjectAndCollectionInitializerTests.cs (4)
1110var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 3592var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model);
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (34)
CodeGen\IndexAndRangeTests.cs (34)
129var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 335var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 422var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 509var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 693var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 1618var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 1811var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 2347var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 2681var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 2844var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 3022var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 3136var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 3357var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 3644var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 3734var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 3820var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model); 3893var (graph, symbol) = ControlFlowGraphVerifier.GetControlFlowGraph(node.Parent.Parent, model);
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (256)
FieldKeywordTests.cs (2)
10482Assert.Equal("return field;", expr.Parent.ToString()); 10516Assert.Equal("return field;", expr.Parent.ToString());
FlowAnalysis\FlowTestBase.cs (2)
226if (firstStatement != null && stmt.Span.End <= end && stmt.Parent == firstStatement.Parent)
Semantics\InlineArrayTests.cs (42)
2360Assert.Equal("b[c]", c.Parent.Parent.Parent.ToString()); 2395Assert.Equal("b[c]", c.Parent.Parent.Parent.ToString()); 2429Assert.Equal("b[c]", c.Parent.Parent.Parent.ToString()); 2509Assert.Equal("x.F[0]", f.Parent.Parent.ToString()); 2520var access = f.Parent.Parent; 6034Assert.Equal("x.F[^10]", f.Parent.Parent.ToString()); 6200Assert.Equal("x.F[..5]", f.Parent.Parent.ToString()); 6211var access = f.Parent.Parent; 8841var m3 = tree.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(m => m.Identifier.ValueText == "M3").Single().Parent; 8842Assert.Equal("M3()[0]", m3.Parent.ToString()); 8853var access = m3.Parent; 9210Assert.Equal("M3()[..]", m3.Parent.Parent.ToString()); 9212var typeInfo = model.GetTypeInfo(m3.Parent); 9217var symbolInfo = model.GetSymbolInfo(m3.Parent); 10554Assert.Equal("c.F[0]", f.Parent.Parent.ToString()); 10565var access = f.Parent.Parent; 11298Assert.Equal("c.F[..5]", f.Parent.Parent.ToString()); 11309var access = f.Parent.Parent; 15216Assert.Equal("=> x.F", f[^2].Parent.Parent.ToString()); 15223Assert.Equal("=> x.F", f[^1].Parent.Parent.ToString()); 16501var m3 = tree.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(m => m.Identifier.ValueText == "M3").First().Parent; 18599var forEachInfo = model.GetForEachStatementInfo((ForEachStatementSyntax)f.Parent); 18925var forEachInfo = model.GetForEachStatementInfo((ForEachStatementSyntax)f.Parent); 19262var forEachInfo = model.GetForEachStatementInfo((ForEachStatementSyntax)collection.Parent);
Semantics\OutVarTests.cs (39)
916Assert.Null(model.GetDeclaredSymbol((ArgumentSyntax)x2Ref.Parent)); 1090var dataFlowParent = decl.Parent.Parent.Parent as ExpressionSyntax; 1094if (isExecutableCode || !(decl.Parent.Parent.Parent is VariableDeclaratorSyntax)) 1096Assert.IsAssignableFrom<ConstructorInitializerSyntax>(decl.Parent.Parent.Parent); 1183var parent1 = ((VariableDeclarationSyntax)((VariableDeclaratorSyntax)parent).Parent).Parent; 1224switch (reference.Parent.Kind()) 1227if (((ArgumentSyntax)reference.Parent).RefOrOutKeyword.Kind() != SyntaxKind.OutKeyword) 1244if (((AssignmentExpressionSyntax)reference.Parent).Left != reference) 1290((methodDeclParent = containingReturnOrThrow.Parent.Parent as MethodDeclarationSyntax) == null || 1333switch (reference.Parent.Kind()) 1336if (((ArgumentSyntax)reference.Parent).RefOrOutKeyword.Kind() != SyntaxKind.None) 1353if (((AssignmentExpressionSyntax)reference.Parent).Left == reference) 1413Assert.Null(model.GetDeclaredSymbol((ArgumentSyntax)x2Ref.Parent)); 1648Assert.Null(model.GetDeclaredSymbol((ArgumentSyntax)x2Ref.Parent)); 20052Assert.Equal("System.Console.WriteLine(y)", yRef[2].Parent.Parent.Parent.ToString()); 32756var inFieldDeclaratorArgumentlist = declarator != null && declarator.Parent.Parent.Kind() != SyntaxKind.LocalDeclarationStatement && 32787var dataFlowParent = (ExpressionSyntax)decl.Parent.Parent.Parent; 32982var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 32991var declaration2 = (DeclarationExpressionSyntax)discard2.Parent; 33066var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 33082var declaration2 = (DeclarationExpressionSyntax)discard2.Parent; 33138var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 33180var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 33196var declaration2 = (DeclarationExpressionSyntax)discard2.Parent; 33244var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 33260var declaration2 = (DeclarationExpressionSyntax)discard2.Parent;
Semantics\ParamsCollectionTests.cs (2)
12555VerifyFlowGraph(comp, node.Parent.Parent, """
Semantics\PatternMatchingTestBase.cs (9)
36return tree.GetRoot().DescendantNodes().OfType<SingleVariableDesignationSyntax>().Where(p => p.Parent.Kind() == SyntaxKind.DeclarationPattern || p.Parent.Kind() == SyntaxKind.VarPattern); 98switch (designation.Parent) 150switch (designation.Parent) 265switch (designation.Parent) 291var inFieldDeclaratorArgumentlist = declarator != null && declarator.Parent.Parent.Kind() != SyntaxKind.LocalDeclarationStatement && 385if (designation.Parent is DeclarationPatternSyntax decl) 406else if (designation.Parent is VarPatternSyntax varp)
Semantics\PatternMatchingTests.cs (4)
4293var declaration1 = (DeclarationPatternSyntax)discard1.Parent; 4301var declaration2 = (VarPatternSyntax)discard2.Parent; 4307var declaration3 = (DeclarationPatternSyntax)discard3.Parent; 4314var declaration4 = (VarPatternSyntax)discard4.Parent;
Semantics\PatternMatchingTests_Global.cs (4)
6323Assert.True(x1Decl.Parent is VarPatternSyntax); 6352Assert.True(x1Decl.Parent is VarPatternSyntax); 6376var x1 = (DeclarationPatternSyntax)x1Decl.Parent; 6399var x1 = (DeclarationPatternSyntax)x1Decl.Parent;
Semantics\PatternMatchingTests_ListPatterns.cs (5)
3688Assert.Equal(syntax, clause.Parent.Parent.ToString()); 3690var typeInfo = model.GetTypeInfo(clause.Parent); // inner {} pattern 3733typeInfo = model.GetTypeInfo(itemDesignation.Parent); 3748typeInfo = model.GetTypeInfo(sliceDesignation.Parent);
Semantics\PatternMatchingTests2.cs (8)
2944checkType((CastExpressionSyntax)expr.Parent.Parent, "C", "C", ConversionKind.Identity); 2951checkType((CastExpressionSyntax)expr.Parent.Parent, "D", "D", ConversionKind.Identity); 2958checkType((CastExpressionSyntax)expr.Parent.Parent, "D", "D", ConversionKind.Identity); 2965checkType((CastExpressionSyntax)expr.Parent.Parent, "D", "D", ConversionKind.Identity);
Semantics\PrimaryConstructorTests.cs (70)
1009Assert.Equal("= X", x.Parent.ToString()); 1074Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1129Assert.Null(model.GetOperation(baseWithargs.Parent)); 1130Assert.Same(operation.Parent.Parent, model.GetOperation(baseWithargs.Parent.Parent)); 1131Assert.Equal(SyntaxKind.ClassDeclaration, baseWithargs.Parent.Parent.Kind()); 1230model.VerifyOperationTree(baseWithargs.Parent, 1302Assert.Equal("Test(X, out var y)", x.Parent.Parent.Parent.ToString()); 1313Assert.Equal("y", y.Parent.ToString()); 1314Assert.Equal("(Test(X, out var y), y)", y.Parent.Parent.ToString()); 1315Assert.Equal("Base(Test(X, out var y), y)", y.Parent.Parent.Parent.ToString()); 1326Assert.Equal("(Test(X, out var y), y)", test.Parent.Parent.Parent.ToString()); 1367Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1413Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1473Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1531Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1542Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1620Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1631Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1816Assert.Equal("Base(X)", x.Parent.Parent.Parent.ToString()); 1856Assert.Equal("Base(X)", x.Parent.Parent.Parent.ToString()); 1899Assert.Equal("Base(X)", x.Parent.Parent.Parent.ToString()); 1969Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 2177var otherBasePosition = ((BaseListSyntax)baseWithargs.Parent).Types[1].SpanStart; 2329var otherBasePosition = ((BaseListSyntax)baseWithargs.Parent).Types[1].SpanStart; 2427Assert.Equal("Base(X)", x.Parent.Parent.Parent.ToString()); 2643Assert.Equal("= X + 1", x.Parent.Parent.ToString()); 2681Assert.Equal("= X + 1", x.Parent.Parent.ToString()); 2718Assert.Equal("= X + 1", x.Parent.Parent.ToString()); 2754Assert.Equal("() => X + 1", x.Parent.Parent.ToString()); 3915switch (identifier.Parent.ToString()) 3923Assert.Equal(SyntaxKind.SimpleBaseType, identifier.Parent.Kind());
Semantics\RecordTests.cs (69)
21250Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21306Assert.Null(model.GetOperation(baseWithargs.Parent)); 21307Assert.Same(operation.Parent.Parent, model.GetOperation(baseWithargs.Parent.Parent)); 21308Assert.Equal(SyntaxKind.RecordDeclaration, baseWithargs.Parent.Parent.Kind()); 21408model.VerifyOperationTree(baseWithargs.Parent, 21480Assert.Equal("Test(X, out var y)", x.Parent!.Parent!.Parent!.ToString()); 21491Assert.Equal("y", y.Parent!.ToString()); 21492Assert.Equal("(Test(X, out var y), y)", y.Parent!.Parent!.ToString()); 21493Assert.Equal("Base(Test(X, out var y), y)", y.Parent!.Parent!.Parent!.ToString()); 21504Assert.Equal("(Test(X, out var y), y)", test.Parent!.Parent!.Parent!.ToString()); 21545Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21591Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21651Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21709Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21720Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21798Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21809Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21994Assert.Equal("Base(X)", x.Parent!.Parent!.Parent!.ToString()); 22031Assert.Equal("Base(X)", x.Parent!.Parent!.Parent!.ToString()); 22071Assert.Equal("Base(X)", x.Parent!.Parent!.Parent!.ToString()); 22106Assert.Equal("Base(X)", x.Parent!.Parent!.Parent!.ToString()); 22185Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 22393var otherBasePosition = ((BaseListSyntax)baseWithargs.Parent!).Types[1].SpanStart; 22545var otherBasePosition = ((BaseListSyntax)baseWithargs.Parent!).Types[1].SpanStart; 24749Assert.Equal("= X + 1", x.Parent!.Parent!.ToString()); 24784Assert.Equal("= X + 1", x.Parent!.Parent!.ToString()); 24818Assert.Equal("= X + 1", x.Parent!.Parent!.ToString()); 24853Assert.Equal("() => X + 1", x.Parent!.Parent!.ToString()); 26455switch (identifier.Parent!.ToString()) 26463Assert.Equal(SyntaxKind.SimpleBaseType, identifier.Parent.Kind());
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (282)
Semantics\BindingTests.cs (12)
2726.First(x => x.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression) && x.Identifier.ValueText.Equals("M0")); 2728Assert.Equal("A.B<string>.M0", identifierNameM0.Parent.ToString()); 2738.First(x => x.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression) && x.Identifier.ValueText.Equals("M1")); 2740Assert.Equal("A.B<string>.M1", identifierNameM1.Parent.ToString()); 2786Assert.Equal("(MyDelegate<int>)MyMethod", identifiers[0].Parent.ToString()); 2789Assert.Equal("(MyDelegate<long>)MyMethod", identifiers[1].Parent.ToString()); 2792Assert.Equal("(MyDelegate<float>)MyMethod", identifiers[2].Parent.ToString()); 2795Assert.Equal("(MyDelegate<double>)MyMethod", identifiers[3].Parent.ToString()); 2837.First(x => x.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression) && x.Identifier.ValueText.Equals("M0")); 2839Assert.Equal("b.M0", identifierNameM0.Parent.ToString()); 2849.First(x => x.Parent.IsKind(SyntaxKind.SimpleMemberAccessExpression) && x.Identifier.ValueText.Equals("M1")); 2851Assert.Equal("b.M1", identifierNameM1.Parent.ToString());
Semantics\ColorColorTests.cs (17)
597var parentExpr = (ExpressionSyntax)expr.Parent; 644var parentExpr = (ExpressionSyntax)expr.Parent; 1073var parentExpr = (ExpressionSyntax)expr.Parent; 1119var parentExpr = (ExpressionSyntax)expr.Parent; 1165var parentExpr = (ExpressionSyntax)expr.Parent; 1210var parentExpr = (ExpressionSyntax)expr.Parent; 1254var parentExpr = (ExpressionSyntax)expr.Parent; 1288var parentExpr = (ExpressionSyntax)expr.Parent; 1851var parentExpr = (ExpressionSyntax)expr.Parent; 1892var node2 = tree.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(n => n.Identifier.Text == "E" && (n.Parent is EqualsValueClauseSyntax)).Single(); 1894Assert.Equal("= E", node2.Parent.ToString()); 1949var node2 = tree.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(n => n.Identifier.Text == "E" && (n.Parent is EqualsValueClauseSyntax)).Single(); 1951Assert.Equal("= E", node2.Parent.ToString()); 2006var node2 = tree.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(n => n.Identifier.Text == "E" && (n.Parent is EqualsValueClauseSyntax)).Single(); 2008Assert.Equal("= E", node2.Parent.ToString()); 2055var node2 = tree.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(n => n.Identifier.Text == "E" && (n.Parent is EqualsValueClauseSyntax)).Single(); 2057Assert.Equal("= E", node2.Parent.ToString());
Semantics\ConditionalOperatorTests.cs (5)
1347var access = (ConditionalAccessExpressionSyntax)memberBinding.Parent!; 1401var invocation = (InvocationExpressionSyntax)memberBinding.Parent!; 1402var access = (ConditionalAccessExpressionSyntax)invocation.Parent!; 1448var assignment = (AssignmentExpressionSyntax)memberBinding.Parent!; 1449var access = (ConditionalAccessExpressionSyntax)assignment.Parent!;
Semantics\DeconstructionTests.cs (5)
5997var argument = (ArgumentSyntax)mainCall.Parent; 6040var argument = (ArgumentSyntax)mainCall.Parent; 6080var argument = (ArgumentSyntax)mainCall.Parent; 6122var argument = (ArgumentSyntax)two.Parent; 6162var argument = (ArgumentSyntax)mainCall.Parent;
Semantics\DynamicTests.cs (68)
6690var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 6799var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 6909var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7006var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7078var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7181var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7294var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7410var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7523var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7600var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7705var assignment = (PostfixUnaryExpressionSyntax)elementAccess.Parent; 7811var assignment = (PostfixUnaryExpressionSyntax)elementAccess.Parent; 7915var assignment = (PostfixUnaryExpressionSyntax)elementAccess.Parent; 7986var assignment = (PrefixUnaryExpressionSyntax)elementAccess.Parent; 8092var assignment = (PrefixUnaryExpressionSyntax)elementAccess.Parent; 8197var assignment = (PrefixUnaryExpressionSyntax)elementAccess.Parent; 8302var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8411var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8520var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8630var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8739var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8808var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8880var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8936var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9026var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9117var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9207var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9263var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9324var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9445var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9565var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9679var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9790var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9901var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 10032var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10037var assignment = (AssignmentExpressionSyntax)left.Parent; 10160var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10165var assignment = (AssignmentExpressionSyntax)left.Parent; 10288var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10293var assignment = (AssignmentExpressionSyntax)left.Parent; 10442var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10447var assignment = (AssignmentExpressionSyntax)left.Parent; 10576var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10581var assignment = (AssignmentExpressionSyntax)left.Parent; 10724var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10729var assignment = (AssignmentExpressionSyntax)left.Parent; 10994var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10999var assignment = (AssignmentExpressionSyntax)left.Parent; 11112var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 11117left = (TupleExpressionSyntax)left.Parent.Parent; 11122var assignment = (AssignmentExpressionSyntax)left.Parent; 11196var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 11201left = (TupleExpressionSyntax)left.Parent.Parent; 11206var assignment = (AssignmentExpressionSyntax)left.Parent; 11274var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 11279var assignment = (AssignmentExpressionSyntax)left.Parent;
Semantics\FunctionPointerTests.cs (4)
3221FunctionPointerUtilities.VerifyFunctionPointerSemanticInfo(model, invocations[2].Parent!.Parent!, 3227VerifyOperationTreeForNode(comp, model, invocations[2].Parent!.Parent!, expectedOperationTree: @"
Semantics\ImplicitObjectCreationTests.cs (8)
3218Assert.Equal("(o, new())", first.Parent.Parent.ToString()); 3222Assert.Equal("(new(), o)", second.Parent.Parent.ToString()); 3226Assert.Equal("(c, new())", third.Parent.Parent.ToString()); 3230Assert.Equal("(new(), c)", fourth.Parent.Parent.ToString());
Semantics\LambdaTests.cs (4)
1514Assert.Equal("a.", node.Parent.ToString().Trim()); 1549Assert.Equal("a.", node.Parent.ToString().Trim()); 1583Assert.Equal("a.", node.Parent.ToString().Trim()); 1615Assert.Equal("a.", node.Parent.ToString().Trim());
Semantics\MethodTypeInferenceTests.cs (1)
844var declaration = (DeclarationExpressionSyntax)discard.Parent;
Semantics\NonTrailingNamedArgumentsTests.cs (2)
52Assert.Equal("a: 1", firstNamedArgA.Parent.ToString()); 64Assert.Equal("a: 4", secondNamedArgA.Parent.ToString());
Semantics\NullableReferenceTypesTests.cs (1)
65943Assert.Equal("object?", object2.Parent.ToString());
Semantics\ObjectAndCollectionInitializerTests.cs (2)
4238var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 4292var assignment = (AssignmentExpressionSyntax)propertyAccess.Parent;
Semantics\QueryTests.cs (1)
2246var e2 = e.Parent as ExpressionSyntax; // w+1
Semantics\RecordStructTests.cs (8)
2667Assert.Equal("= X + 1", x.Parent!.Parent!.ToString()); 2702Assert.Equal("= X + 1", x.Parent!.Parent!.ToString()); 2736Assert.Equal("= X + 1", x.Parent!.Parent!.ToString()); 2771Assert.Equal("() => X + 1", x.Parent!.Parent!.ToString());
Semantics\RefEscapingTests.cs (8)
5786Assert.Equal(@"(global, s) = (local, """")", tuple2.Parent.ToString()); 5792Assert.Equal(@"(global, s) = (local, null)", tuple3.Parent.ToString()); 5798Assert.Equal(@"(c, s) = (local, """")", tuple6.Parent.ToString()); 5804Assert.Equal("(c, s) = (local, null)", tuple7.Parent.ToString()); 5886Assert.Equal(@"(global, s) = (local, """")", tuple2.Parent.ToString()); 5892Assert.Equal(@"(global, s) = (local, null)", tuple3.Parent.ToString()); 5898Assert.Equal(@"(c, s) = (local, """")", tuple6.Parent.ToString()); 5904Assert.Equal("(c, s) = (local, null)", tuple7.Parent.ToString());
Semantics\RefFieldTests.cs (26)
12140var type = ((VariableDeclarationSyntax)decl.Parent).Type; 12208var type = ((VariableDeclarationSyntax)decl.Parent).Type; 12274var type = ((VariableDeclarationSyntax)decl.Parent).Type; 12463var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12495var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12647var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12675var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12874var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12908var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 13054var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 13082var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 13520var type = ((VariableDeclarationSyntax)decl.Parent).Type; 13584var type = ((VariableDeclarationSyntax)decl.Parent).Type; 13661var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 13731var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 14428var type = ((VariableDeclarationSyntax)decls[0].Parent).Type; 14470var type = ((VariableDeclarationSyntax)decls[0].Parent).Type; 14922var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 14950var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 27673var type = ((VariableDeclarationSyntax)decl.Parent).Type; 27763var type = ((VariableDeclarationSyntax)decl.Parent).Type; 28034var type = ((VariableDeclarationSyntax)decl.Parent).Type; 28094var type = ((VariableDeclarationSyntax)decl.Parent).Type; 28316var type = ((VariableDeclarationSyntax)decls[0].Parent).Type; 28364var type = ((VariableDeclarationSyntax)decls[0].Parent).Type; 29449var symbol = model.GetDeclaredSymbol(fieldInitializerSyntax.Parent);
Semantics\TargetTypedDefaultTests.cs (9)
1632Assert.Equal("s += default", defaultLiteral.Parent.ToString()); 2415Assert.Equal("(o, default)", first.Parent.Parent.ToString()); 2420Assert.Equal("(default, o)", second.Parent.Parent.ToString()); 2425Assert.Equal("(s, default)", third.Parent.Parent.ToString()); 2430Assert.Equal("(default, s)", fourth.Parent.Parent.ToString());
Semantics\TopLevelStatementsTests.cs (99)
201var operation1 = model1.GetOperation(localRef.Parent); 329var operation1 = model1.GetOperation(localRef.Parent); 1710Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 1718Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 1734Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 1740Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 1745Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 1750Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 1756Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 1886Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 1902Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 1908Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 1913Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 1918Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 1924Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 2104Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 2117Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2122Assert.Equal("System.Console.WriteLine(Test())", nameRef.Parent.Parent.Parent.Parent.ToString()); 2127Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 2132Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2137Assert.Equal("System.Console.WriteLine(Test())", nameRef.Parent.Parent.Parent.Parent.ToString()); 2270Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 2283Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2288Assert.Equal("System.Console.WriteLine(Test())", nameRef.Parent.Parent.Parent.Parent.ToString()); 2293Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 2298Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2303Assert.Equal("System.Console.WriteLine(Test())", nameRef.Parent.Parent.Parent.Parent.ToString()); 2450Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 2465Assert.Equal("goto Test;", nameRef.Parent.ToString()); 2480Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2485Assert.Equal("goto Test;", nameRef.Parent.ToString()); 2490Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 2495Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2501Assert.Equal("goto Test;", nameRef.Parent.ToString()); 2920var nameRef = tree1.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(id => id.Identifier.ValueText == "alias1" && !id.Parent.IsKind(SyntaxKind.NameEquals)).Single(); 2942nameRef = tree2.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(id => id.Identifier.ValueText == "alias2" && !id.Parent.IsKind(SyntaxKind.NameEquals)).Single(); 3945Assert.Equal("using alias1 = args;", nameRef.Parent.ToString()); 3957Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 3976Assert.Equal(": args", nameRef.Parent.Parent.ToString()); 3981Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 3986Assert.Equal("using alias2 = args;", nameRef.Parent.ToString()); 3991Assert.Equal(": args", nameRef.Parent.Parent.ToString()); 3996Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 4094Assert.Equal("using alias1 = args;", nameRef.Parent.ToString()); 4106Assert.Equal(": args", nameRef.Parent.Parent.ToString()); 4111Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 4116Assert.Equal("using alias2 = args;", nameRef.Parent.ToString()); 4121Assert.Equal(": args", nameRef.Parent.Parent.ToString()); 4126Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 6457Assert.True(syntaxTreeModel.TestOnlyMemberModels.ContainsKey(globalStatement.Parent)); 6459MemberSemanticModel mm = syntaxTreeModel.TestOnlyMemberModels[globalStatement.Parent]; 9708model.TryGetSpeculativeSemanticModel(root.DescendantNodes().Single(n => n is ExpressionStatementSyntax { Parent: GlobalStatementSyntax }).Span.End, nodeToSpeculate, out var speculativeModelInTopLevel); 9713model.TryGetSpeculativeSemanticModel(root.DescendantNodes().Single(n => n is ExpressionStatementSyntax { Parent: BlockSyntax }).Span.End, nodeToSpeculate, out var speculativeModelOutsideTopLevel);
Semantics\UnsafeTests.cs (2)
7850var callSyntax = syntax.Parent; 7917var callSyntax = syntax.Parent;
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (35)
Compilation\GetSemanticInfoTests.cs (4)
3640var cast = (CastExpressionSyntax)literal.Parent; 3673var cast = (CastExpressionSyntax)literal.Parent; 3709var cast1 = (CastExpressionSyntax)literal.Parent; 3721var cast2 = (CastExpressionSyntax)cast1.Parent;
Compilation\SemanticModelAPITests.cs (2)
3782var expr = identifier.FirstAncestorOrSelf<ArgumentSyntax>().Parent.Parent;
DocumentationComments\CrefTests.cs (1)
5799if (typeSyntax.Parent.Kind() == SyntaxKind.NameMemberCref)
Symbols\CheckedUserDefinedOperatorsTests.cs (13)
7238Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.GetSymbolInfo(xNode.Parent).Symbol.ToTestDisplayString()); 7239Assert.Equal("System.Int64 C0.op_CheckedExplicit(C0 x)", model.GetSymbolInfo(yNode.Parent).Symbol.ToTestDisplayString()); 7241var int64 = ((IMethodSymbol)model.GetSymbolInfo(xNode.Parent).Symbol).ReturnType; 7310Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.GetSymbolInfo(xNode.Parent).Symbol.ToTestDisplayString()); 7311Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.GetSymbolInfo(yNode.Parent).Symbol.ToTestDisplayString()); 7313var int64 = ((IMethodSymbol)model.GetSymbolInfo(xNode.Parent).Symbol).ReturnType; 7381Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.GetSymbolInfo(xNode.Parent).Symbol.ToTestDisplayString()); 7382Assert.Equal("System.Int64 C0.op_Explicit(C0 x)", model.GetSymbolInfo(yNode.Parent).Symbol.ToTestDisplayString()); 7384var int64 = ((IMethodSymbol)model.GetSymbolInfo(xNode.Parent).Symbol).ReturnType; 7454Assert.Equal("C0 C0.op_CheckedUnaryNegation(C0 a)", model.GetSymbolInfo(xNode.Parent).Symbol.ToTestDisplayString()); 7455Assert.Equal("C0 C0.op_CheckedUnaryNegation(C0 a)", model.GetSymbolInfo(yNode.Parent).Symbol.ToTestDisplayString()); 7518Assert.Equal("C0 C0.op_UnaryNegation(C0 a)", model.GetSymbolInfo(xNode.Parent).Symbol.ToTestDisplayString()); 7519Assert.Equal("C0 C0.op_UnaryNegation(C0 a)", model.GetSymbolInfo(yNode.Parent).Symbol.ToTestDisplayString());
Symbols\ExtensionMethodTests.cs (5)
3012var call = (ExpressionSyntax)memberAccess.Parent; 3867Assert.Equal("Instance.SetMember", instance.Parent.ToString()); 3914Assert.Equal("Instance.SetMember", instance.Parent.ToString()); 3959Assert.Equal("Instance.SetMember", instance.Parent.ToString()); 4009Assert.Equal("Instance.SetMember", instance.Parent.ToString());
Symbols\FunctionPointerTypeSymbolTests.cs (4)
1168Assert.NotNull(functionPointerTypeSyntax.Parent); 1169VerifyOperationTreeForNode(comp, model, functionPointerTypeSyntax.Parent, expectedOperationTree: @" 1275Assert.NotNull(functionPointerTypeSyntax.Parent); 1276VerifyOperationTreeForNode(comp, model, functionPointerTypeSyntax.Parent, expectedOperationTree: @"
Symbols\PartialPropertiesTests.cs (1)
5173Assert.Equal(SyntaxKind.TupleElement, node.Parent!.Kind());
Symbols\Source\NullablePublicAPITests.cs (3)
1952var typeInfo = model.GetTypeInfoAndVerifyIOperation(((VariableDeclarationSyntax)variable.Parent).Type); 2293var typeInfo = model.GetTypeInfoAndVerifyIOperation(((DeclarationExpressionSyntax)variable.Parent).Type); 2563var type = ((DeclarationExpressionSyntax)variable.Parent).Type;
Symbols\Source\UsingAliasTests.cs (2)
699Assert.Equal("Short.MyClass", node.Parent.ToString()); 742Assert.Equal("Short.MyClass", node.Parent.ToString());
Microsoft.CodeAnalysis.CSharp.Test.Utilities (2)
CompilationTestUtils.cs (2)
543case IdentifierNameSyntax id when id.Parent is MemberAccessExpressionSyntax memberAccess && memberAccess.Name == node: 546case ExpressionSyntax expr when expr.Parent is ConditionalAccessExpressionSyntax cond && cond.WhenNotNull == node:
Microsoft.CodeAnalysis.Test.Utilities (20)
Compilation\ControlFlowGraphVerifier.cs (20)
611if (syntax.Parent is CSharp.Syntax.SwitchStatementSyntax switchStmt && switchStmt.Expression == syntax) 616if (syntax.Parent is CSharp.Syntax.SwitchExpressionSyntax switchExpr && switchExpr.GoverningExpression == syntax) 654if (syntax.Parent is CSharp.Syntax.CommonForEachStatementSyntax forEach && forEach.Expression == syntax) 836if (syntax.Parent is CSharp.Syntax.ConditionalAccessExpressionSyntax access && 868return referenceSyntax.Parent is AssignmentExpressionSyntax conditionalAccess && 881return referenceSyntax.Parent is CSharp.Syntax.AssignmentExpressionSyntax 884Parent: InitializerExpressionSyntax { Parent: CSharp.Syntax.ObjectCreationExpressionSyntax }, 1049if (syntax.Parent is CSharp.Syntax.ConditionalAccessExpressionSyntax access && 1116if (syntax.Parent is CSharp.Syntax.WithExpressionSyntax withExpr 1125if (syntax.Parent?.Parent is CSharp.Syntax.UsingStatementSyntax usingStmt && 1126usingStmt.Declaration == syntax.Parent) 1131CSharpSyntaxNode parent = syntax.Parent; 1144if ((parent = parent.Parent)?.Kind() == CSharp.SyntaxKind.BracketedArgumentList && 1145(parent = parent.Parent)?.Kind() == CSharp.SyntaxKind.ImplicitElementAccess && 1146parent.Parent is AssignmentExpressionSyntax assignment && assignment.Kind() == CSharp.SyntaxKind.SimpleAssignmentExpression && 1148assignment.Parent?.Kind() == CSharp.SyntaxKind.ObjectInitializerExpression && 1284while (syntax.Parent is CSharp.Syntax.ParenthesizedExpressionSyntax or 1287syntax = syntax.Parent;
Microsoft.CodeAnalysis.UnitTests (2)
CommonSyntaxTests.cs (2)
223Assert.Equal(CSharp.SyntaxKind.ParenthesizedExpression, CSharp.CSharpExtensions.Kind(trackedB.Parent)); 246Assert.Equal(CSharp.SyntaxKind.ParenthesizedExpression, CSharp.CSharpExtensions.Kind(trackedB.Parent));