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)
835if (declarationNode.Parent.Kind() == SyntaxKind.LocalDeclarationStatement && 1945hasUnsafeModifier: 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) 1463curr = curr.Parent; 1475for (; !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)
1593if (current.Parent == null || current.Parent.Kind() != SyntaxKind.LocalFunctionStatement) 2219return node.Parent; 2251var parent = node.Parent; 2276var grandparent = parent.Parent; 2322CSharpSyntaxNode? parent = node.Parent; 2343var pp = parent.Parent; 2362case { RawKind: (int)SyntaxKind.SimpleMemberAccessExpression, Parent.RawKind: (int)SyntaxKind.InvocationExpression }: 2363bindableParent = bindableParent.Parent;
Compilation\SyntaxTreeSemanticModel.cs (18)
247else if (node.Parent.Kind() == SyntaxKind.XmlNameAttribute && (attrSyntax = (XmlNameAttributeSyntax)node.Parent).Identifier == node) 940return GetOrAddModel((CompilationUnitSyntax)memberDecl.Parent); 962return GetMemberModel(memberDecl.Parent); 1116ExceptionUtilities.UnexpectedValue(node.Parent); 1120switch (node.Parent.Kind()) 1124var variableDecl = (VariableDeclaratorSyntax)node.Parent; 1137var propertyDecl = (PropertyDeclarationSyntax)node.Parent; 1150ParameterSyntax parameterDecl = (ParameterSyntax)node.Parent; 1165var enumDecl = (EnumMemberDeclarationSyntax)node.Parent; 1177throw ExceptionUtilities.UnexpectedValue(node.Parent.Kind()); 1186if (node.Parent is BasePropertyDeclarationSyntax) 1193ExceptionUtilities.UnexpectedValue(node.Parent); 1208var parent = node.Parent; 1604var propertyOrEventDecl = declarationSyntax.Parent.Parent; 2355if (memberDeclaration.Parent.Kind() == SyntaxKind.CompilationUnit) 2379var container = GetDeclaredNamespaceOrType(memberDeclaration.Parent);
Compiler\MethodCompiler.cs (2)
2284var parent = child.Parent; 2289parent = child.Parent;
DocumentationComments\SourceDocumentationCommentUtils.cs (1)
53curr = curr.Parent;
Parser\LanguageParser.cs (3)
141return node != null ? node.Parent : null; 2514return (this.CurrentNode.Parent is Syntax.CompilationUnitSyntax); 4908CSharp.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)
2181CSharpSyntaxNode? parent = node.Parent; 2228CSharpSyntaxNode? grandparent = parent.Parent; 2277if (parent.Parent.IsKind(SyntaxKind.Subpattern)) 2279return parent.Parent; 2302currentNode = 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)
10607Assert.Equal("return field;", expr.Parent.ToString()); 10641Assert.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)
914Assert.Null(model.GetDeclaredSymbol((ArgumentSyntax)x2Ref.Parent)); 1088var dataFlowParent = decl.Parent.Parent.Parent as ExpressionSyntax; 1092if (isExecutableCode || !(decl.Parent.Parent.Parent is VariableDeclaratorSyntax)) 1094Assert.IsAssignableFrom<ConstructorInitializerSyntax>(decl.Parent.Parent.Parent); 1181var parent1 = ((VariableDeclarationSyntax)((VariableDeclaratorSyntax)parent).Parent).Parent; 1222switch (reference.Parent.Kind()) 1225if (((ArgumentSyntax)reference.Parent).RefOrOutKeyword.Kind() != SyntaxKind.OutKeyword) 1242if (((AssignmentExpressionSyntax)reference.Parent).Left != reference) 1288((methodDeclParent = containingReturnOrThrow.Parent.Parent as MethodDeclarationSyntax) == null || 1331switch (reference.Parent.Kind()) 1334if (((ArgumentSyntax)reference.Parent).RefOrOutKeyword.Kind() != SyntaxKind.None) 1351if (((AssignmentExpressionSyntax)reference.Parent).Left == reference) 1411Assert.Null(model.GetDeclaredSymbol((ArgumentSyntax)x2Ref.Parent)); 1646Assert.Null(model.GetDeclaredSymbol((ArgumentSyntax)x2Ref.Parent)); 20041Assert.Equal("System.Console.WriteLine(y)", yRef[2].Parent.Parent.Parent.ToString()); 32745var inFieldDeclaratorArgumentlist = declarator != null && declarator.Parent.Parent.Kind() != SyntaxKind.LocalDeclarationStatement && 32776var dataFlowParent = (ExpressionSyntax)decl.Parent.Parent.Parent; 32971var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 32980var declaration2 = (DeclarationExpressionSyntax)discard2.Parent; 33055var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 33071var declaration2 = (DeclarationExpressionSyntax)discard2.Parent; 33127var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 33169var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 33185var declaration2 = (DeclarationExpressionSyntax)discard2.Parent; 33233var declaration1 = (DeclarationExpressionSyntax)discard1.Parent; 33249var declaration2 = (DeclarationExpressionSyntax)discard2.Parent;
Semantics\ParamsCollectionTests.cs (2)
12539VerifyFlowGraph(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)
6324Assert.True(x1Decl.Parent is VarPatternSyntax); 6353Assert.True(x1Decl.Parent is VarPatternSyntax); 6377var x1 = (DeclarationPatternSyntax)x1Decl.Parent; 6400var x1 = (DeclarationPatternSyntax)x1Decl.Parent;
Semantics\PatternMatchingTests_ListPatterns.cs (5)
3748Assert.Equal(syntax, clause.Parent.Parent.ToString()); 3750var typeInfo = model.GetTypeInfo(clause.Parent); // inner {} pattern 3793typeInfo = model.GetTypeInfo(itemDesignation.Parent); 3808typeInfo = model.GetTypeInfo(sliceDesignation.Parent);
Semantics\PatternMatchingTests2.cs (8)
2961checkType((CastExpressionSyntax)expr.Parent.Parent, "C", "C", ConversionKind.Identity); 2968checkType((CastExpressionSyntax)expr.Parent.Parent, "D", "D", ConversionKind.Identity); 2975checkType((CastExpressionSyntax)expr.Parent.Parent, "D", "D", ConversionKind.Identity); 2982checkType((CastExpressionSyntax)expr.Parent.Parent, "D", "D", ConversionKind.Identity);
Semantics\PrimaryConstructorTests.cs (70)
1139Assert.Equal("= X", x.Parent.ToString()); 1204Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1259Assert.Null(model.GetOperation(baseWithargs.Parent)); 1260Assert.Same(operation.Parent.Parent, model.GetOperation(baseWithargs.Parent.Parent)); 1261Assert.Equal(SyntaxKind.ClassDeclaration, baseWithargs.Parent.Parent.Kind()); 1360model.VerifyOperationTree(baseWithargs.Parent, 1432Assert.Equal("Test(X, out var y)", x.Parent.Parent.Parent.ToString()); 1443Assert.Equal("y", y.Parent.ToString()); 1444Assert.Equal("(Test(X, out var y), y)", y.Parent.Parent.ToString()); 1445Assert.Equal("Base(Test(X, out var y), y)", y.Parent.Parent.Parent.ToString()); 1456Assert.Equal("(Test(X, out var y), y)", test.Parent.Parent.Parent.ToString()); 1497Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1543Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1603Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1661Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1672Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1750Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1761Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 1946Assert.Equal("Base(X)", x.Parent.Parent.Parent.ToString()); 1986Assert.Equal("Base(X)", x.Parent.Parent.Parent.ToString()); 2029Assert.Equal("Base(X)", x.Parent.Parent.Parent.ToString()); 2099Assert.Equal("Base(X, Y)", x.Parent.Parent.Parent.ToString()); 2307var otherBasePosition = ((BaseListSyntax)baseWithargs.Parent).Types[1].SpanStart; 2459var otherBasePosition = ((BaseListSyntax)baseWithargs.Parent).Types[1].SpanStart; 2557Assert.Equal("Base(X)", x.Parent.Parent.Parent.ToString()); 2773Assert.Equal("= X + 1", x.Parent.Parent.ToString()); 2811Assert.Equal("= X + 1", x.Parent.Parent.ToString()); 2848Assert.Equal("= X + 1", x.Parent.Parent.ToString()); 2884Assert.Equal("() => X + 1", x.Parent.Parent.ToString()); 4055switch (identifier.Parent.ToString()) 4063Assert.Equal(SyntaxKind.SimpleBaseType, identifier.Parent.Kind());
Semantics\RecordTests.cs (69)
21232Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21288Assert.Null(model.GetOperation(baseWithargs.Parent)); 21289Assert.Same(operation.Parent.Parent, model.GetOperation(baseWithargs.Parent.Parent)); 21290Assert.Equal(SyntaxKind.RecordDeclaration, baseWithargs.Parent.Parent.Kind()); 21390model.VerifyOperationTree(baseWithargs.Parent, 21462Assert.Equal("Test(X, out var y)", x.Parent!.Parent!.Parent!.ToString()); 21473Assert.Equal("y", y.Parent!.ToString()); 21474Assert.Equal("(Test(X, out var y), y)", y.Parent!.Parent!.ToString()); 21475Assert.Equal("Base(Test(X, out var y), y)", y.Parent!.Parent!.Parent!.ToString()); 21486Assert.Equal("(Test(X, out var y), y)", test.Parent!.Parent!.Parent!.ToString()); 21527Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21573Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21633Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21691Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21702Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21780Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21791Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 21976Assert.Equal("Base(X)", x.Parent!.Parent!.Parent!.ToString()); 22013Assert.Equal("Base(X)", x.Parent!.Parent!.Parent!.ToString()); 22053Assert.Equal("Base(X)", x.Parent!.Parent!.Parent!.ToString()); 22088Assert.Equal("Base(X)", x.Parent!.Parent!.Parent!.ToString()); 22167Assert.Equal("Base(X, Y)", x.Parent!.Parent!.Parent!.ToString()); 22375var otherBasePosition = ((BaseListSyntax)baseWithargs.Parent!).Types[1].SpanStart; 22527var otherBasePosition = ((BaseListSyntax)baseWithargs.Parent!).Types[1].SpanStart; 24713Assert.Equal("= X + 1", x.Parent!.Parent!.ToString()); 24748Assert.Equal("= X + 1", x.Parent!.Parent!.ToString()); 24782Assert.Equal("= X + 1", x.Parent!.Parent!.ToString()); 24817Assert.Equal("() => X + 1", x.Parent!.Parent!.ToString()); 26419switch (identifier.Parent!.ToString()) 26427Assert.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)
5994var argument = (ArgumentSyntax)mainCall.Parent; 6037var argument = (ArgumentSyntax)mainCall.Parent; 6077var argument = (ArgumentSyntax)mainCall.Parent; 6119var argument = (ArgumentSyntax)two.Parent; 6159var argument = (ArgumentSyntax)mainCall.Parent;
Semantics\DynamicTests.cs (68)
6788var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 6897var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7007var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7104var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7176var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7279var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7392var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7508var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7621var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7698var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 7803var assignment = (PostfixUnaryExpressionSyntax)elementAccess.Parent; 7909var assignment = (PostfixUnaryExpressionSyntax)elementAccess.Parent; 8013var assignment = (PostfixUnaryExpressionSyntax)elementAccess.Parent; 8084var assignment = (PrefixUnaryExpressionSyntax)elementAccess.Parent; 8190var assignment = (PrefixUnaryExpressionSyntax)elementAccess.Parent; 8295var assignment = (PrefixUnaryExpressionSyntax)elementAccess.Parent; 8400var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8509var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8618var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8728var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8837var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8906var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 8978var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9034var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9124var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9215var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9305var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9361var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9422var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9543var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9663var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9777var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9888var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 9999var assignment = (AssignmentExpressionSyntax)elementAccess.Parent; 10130var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10135var assignment = (AssignmentExpressionSyntax)left.Parent; 10258var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10263var assignment = (AssignmentExpressionSyntax)left.Parent; 10386var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10391var assignment = (AssignmentExpressionSyntax)left.Parent; 10540var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10545var assignment = (AssignmentExpressionSyntax)left.Parent; 10674var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10679var assignment = (AssignmentExpressionSyntax)left.Parent; 10822var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 10827var assignment = (AssignmentExpressionSyntax)left.Parent; 11092var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 11097var assignment = (AssignmentExpressionSyntax)left.Parent; 11210var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 11215left = (TupleExpressionSyntax)left.Parent.Parent; 11220var assignment = (AssignmentExpressionSyntax)left.Parent; 11294var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 11299left = (TupleExpressionSyntax)left.Parent.Parent; 11304var assignment = (AssignmentExpressionSyntax)left.Parent; 11372var left = (TupleExpressionSyntax)elementAccess.Parent.Parent; 11377var assignment = (AssignmentExpressionSyntax)left.Parent;
Semantics\FunctionPointerTests.cs (4)
3213FunctionPointerUtilities.VerifyFunctionPointerSemanticInfo(model, invocations[2].Parent!.Parent!, 3219VerifyOperationTreeForNode(comp, model, invocations[2].Parent!.Parent!, expectedOperationTree: @"
Semantics\ImplicitObjectCreationTests.cs (8)
3209Assert.Equal("(o, new())", first.Parent.Parent.ToString()); 3213Assert.Equal("(new(), o)", second.Parent.Parent.ToString()); 3217Assert.Equal("(c, new())", third.Parent.Parent.ToString()); 3221Assert.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)
65984Assert.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)
8467Assert.Equal(@"(global, s) = (local, """")", tuple2.Parent.ToString()); 8473Assert.Equal(@"(global, s) = (local, null)", tuple3.Parent.ToString()); 8479Assert.Equal(@"(c, s) = (local, """")", tuple6.Parent.ToString()); 8485Assert.Equal("(c, s) = (local, null)", tuple7.Parent.ToString()); 8567Assert.Equal(@"(global, s) = (local, """")", tuple2.Parent.ToString()); 8573Assert.Equal(@"(global, s) = (local, null)", tuple3.Parent.ToString()); 8579Assert.Equal(@"(c, s) = (local, """")", tuple6.Parent.ToString()); 8585Assert.Equal("(c, s) = (local, null)", tuple7.Parent.ToString());
Semantics\RefFieldTests.cs (26)
12103var type = ((VariableDeclarationSyntax)decl.Parent).Type; 12171var type = ((VariableDeclarationSyntax)decl.Parent).Type; 12237var type = ((VariableDeclarationSyntax)decl.Parent).Type; 12426var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12458var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12610var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12638var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12837var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 12871var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 13017var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 13045var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 13483var type = ((VariableDeclarationSyntax)decl.Parent).Type; 13547var type = ((VariableDeclarationSyntax)decl.Parent).Type; 13624var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 13694var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 14391var type = ((VariableDeclarationSyntax)decls[0].Parent).Type; 14433var type = ((VariableDeclarationSyntax)decls[0].Parent).Type; 14885var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 14913var type = ((DeclarationExpressionSyntax)decl.Parent).Type; 27588var type = ((VariableDeclarationSyntax)decl.Parent).Type; 27678var type = ((VariableDeclarationSyntax)decl.Parent).Type; 27949var type = ((VariableDeclarationSyntax)decl.Parent).Type; 28009var type = ((VariableDeclarationSyntax)decl.Parent).Type; 28231var type = ((VariableDeclarationSyntax)decls[0].Parent).Type; 28279var type = ((VariableDeclarationSyntax)decls[0].Parent).Type; 29364var 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); 1745Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 1753Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 1769Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 1775Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 1780Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 1785Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 1791Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 1921Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 1937Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 1943Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 1948Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 1953Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 1959Assert.Equal("System.Console.WriteLine(Test)", nameRef.Parent.Parent.Parent.ToString()); 2139Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 2152Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2157Assert.Equal("System.Console.WriteLine(Test())", nameRef.Parent.Parent.Parent.Parent.ToString()); 2162Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 2167Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2172Assert.Equal("System.Console.WriteLine(Test())", nameRef.Parent.Parent.Parent.Parent.ToString()); 2305Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 2318Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2323Assert.Equal("System.Console.WriteLine(Test())", nameRef.Parent.Parent.Parent.Parent.ToString()); 2328Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 2333Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2338Assert.Equal("System.Console.WriteLine(Test())", nameRef.Parent.Parent.Parent.Parent.ToString()); 2485Assert.Equal("using alias1 = Test;", nameRef.Parent.ToString()); 2500Assert.Equal("goto Test;", nameRef.Parent.ToString()); 2515Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2520Assert.Equal("goto Test;", nameRef.Parent.ToString()); 2525Assert.Equal("using alias2 = Test;", nameRef.Parent.ToString()); 2530Assert.Equal(": Test", nameRef.Parent.Parent.ToString()); 2536Assert.Equal("goto Test;", nameRef.Parent.ToString()); 2955var nameRef = tree1.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(id => id.Identifier.ValueText == "alias1" && !id.Parent.IsKind(SyntaxKind.NameEquals)).Single(); 2977nameRef = tree2.GetRoot().DescendantNodes().OfType<IdentifierNameSyntax>().Where(id => id.Identifier.ValueText == "alias2" && !id.Parent.IsKind(SyntaxKind.NameEquals)).Single(); 3980Assert.Equal("using alias1 = args;", nameRef.Parent.ToString()); 3992Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 4011Assert.Equal(": args", nameRef.Parent.Parent.ToString()); 4016Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 4021Assert.Equal("using alias2 = args;", nameRef.Parent.ToString()); 4026Assert.Equal(": args", nameRef.Parent.Parent.ToString()); 4031Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 4129Assert.Equal("using alias1 = args;", nameRef.Parent.ToString()); 4141Assert.Equal(": args", nameRef.Parent.Parent.ToString()); 4146Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 4151Assert.Equal("using alias2 = args;", nameRef.Parent.ToString()); 4156Assert.Equal(": args", nameRef.Parent.Parent.ToString()); 4161Assert.Equal("System.Console.WriteLine(args)", nameRef.Parent.Parent.Parent.ToString()); 6546Assert.True(syntaxTreeModel.TestOnlyMemberModels.ContainsKey(globalStatement.Parent)); 6548MemberSemanticModel mm = syntaxTreeModel.TestOnlyMemberModels[globalStatement.Parent]; 9846model.TryGetSpeculativeSemanticModel(root.DescendantNodes().Single(n => n is ExpressionStatementSyntax { Parent: GlobalStatementSyntax }).Span.End, nodeToSpeculate, out var speculativeModelInTopLevel); 9851model.TryGetSpeculativeSemanticModel(root.DescendantNodes().Single(n => n is ExpressionStatementSyntax { Parent: BlockSyntax }).Span.End, nodeToSpeculate, out var speculativeModelOutsideTopLevel);
Semantics\UnsafeTests.cs (2)
7851var callSyntax = syntax.Parent; 7918var callSyntax = syntax.Parent;
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (35)
Compilation\GetSemanticInfoTests.cs (4)
3641var cast = (CastExpressionSyntax)literal.Parent; 3674var cast = (CastExpressionSyntax)literal.Parent; 3710var cast1 = (CastExpressionSyntax)literal.Parent; 3722var 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)
5200Assert.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)
550case IdentifierNameSyntax id when id.Parent is MemberAccessExpressionSyntax memberAccess && memberAccess.Name == node: 553case 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));