2 implementations of ChildOperations
Microsoft.CodeAnalysis (1)
Operations\Operation.cs (1)
110public IOperation.OperationList ChildOperations => new IOperation.OperationList(this);
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (1)
Semantics\CollectionExpressionTests.cs (1)
29503IOperation.OperationList IOperation.ChildOperations => throw null;
200 references to ChildOperations
ConfigurationSchemaGenerator (2)
RuntimeSource\Configuration.Binder\Parser\ConfigurationBinder.cs (2)
172ITypeOfOperation? typeOfOperation = GetArgumentForParameterAtIndex(operation.Arguments, 1).ChildOperations.FirstOrDefault() as ITypeOfOperation; 227ITypeOfOperation? typeOfOperation = GetArgumentForParameterAtIndex(operation.Arguments, 1).ChildOperations.FirstOrDefault() as ITypeOfOperation;
GenerateDocumentationAndConfigFiles (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Utilities\NullableHelpers.cs (1)
128foreach (var childOperation in operation.ChildOperations.Reverse())
ILLink.RoslynAnalyzer (1)
DataFlow\OperationWalker.cs (1)
16foreach (var child in operation.ChildOperations)
Microsoft.Analyzers.Extra (6)
AsyncCallInsideUsingBlockAnalyzer.cs (1)
213.ChildOperations
CallAnalysis\Fixers\LegacyLoggingFixer.FixDetails.cs (5)
45var children = op.ChildOperations.ToArray(); 61foreach (var o in children[0].ChildOperations) 66_ = sb.Append(stringOp.ChildOperations.First().ConstantValue.Value as string); 70var operation = intOp.ChildOperations.First(); 92interpolationArgs.Add(intOp.ChildOperations.First());
Microsoft.AspNetCore.App.Analyzers (7)
Authorization\AddAuthorizationBuilderAnalyzer.cs (4)
76var allOperationsInvolveAuthorizationOptions = configureBlockOperation.ChildOperations 105if (configureArgumentOperation is { ChildOperations: { Count: 1 } argumentChildOperations } 119if (configureDelegateCreationOperation is { ChildOperations: { Count: 1 } delegateCreationChildOperations } 133if (configureAnonymousFunctionOperation is { ChildOperations: { Count: 1 } anonymousFunctionChildOperations }
RouteHandlers\DetectMisplacedLambdaAttribute.cs (3)
28if (lambda.ChildOperations.Count != 1 || lambda.ChildOperations.FirstOrDefault() is not IBlockOperation blockOperation) 73foreach (var op in Enumerable.Reverse(blockOperation.ChildOperations))
Microsoft.CodeAnalysis (8)
Operations\ControlFlowGraphBuilder.cs (4)
1624Debug.Assert(rewrittenThrow.ChildOperations.IsEmpty()); 1642Debug.Assert(rewrittenThrow.ChildOperations.IsEmpty()); 2932Debug.Assert(rewrittenThrow.ChildOperations.IsEmpty()); 3074Debug.Assert(rewrittenThrow.ChildOperations.IsEmpty());
Operations\IOperation.cs (2)
48/// An array of child operations for this operation. Deprecated: please use <see cref="ChildOperations"/>. 50[Obsolete($"This API has performance penalties, please use {nameof(ChildOperations)} instead.", error: false)]
Operations\OperationExtensions.cs (2)
97stack.Push(operation.ChildOperations.GetEnumerator()); 117stack.Push(current.ChildOperations.GetEnumerator());
Microsoft.CodeAnalysis.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Utilities\NullableHelpers.cs (1)
128foreach (var childOperation in operation.ChildOperations.Reverse())
Microsoft.CodeAnalysis.AnalyzerUtilities (2)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\TaintedDataAnalysis\TaintedDataAnalysis.TaintedDataOperationVisitor.cs (1)
185foreach (IOperation childOperation in operation.ChildOperations)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowOperationVisitor.cs (1)
2826return VisitArray(operation.ChildOperations, argument);
Microsoft.CodeAnalysis.BannedApiAnalyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Utilities\NullableHelpers.cs (1)
128foreach (var childOperation in operation.ChildOperations.Reverse())
Microsoft.CodeAnalysis.CodeStyle.Fixes (2)
src\Analyzers\Core\CodeFixes\UseConditionalExpression\ForAssignment\AbstractUseConditionalExpressionForAssignmentCodeFixProvider.cs (1)
262foreach (var child in operation.ChildOperations)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Utilities\NullableHelpers.cs (1)
128foreach (var childOperation in operation.ChildOperations.Reverse())
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (1)
src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordHelpers.cs (1)
483return operation.ChildOperations.All(IsSafeAssignment);
Microsoft.CodeAnalysis.CSharp.Features (1)
src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordHelpers.cs (1)
483return operation.ChildOperations.All(IsSafeAssignment);
Microsoft.CodeAnalysis.CSharp.IOperation.UnitTests (14)
IOperation\IOperationTests_IVariableDeclaration.cs (14)
613Assert.Equal(2, declarator.ChildOperations.Count()); 614Assert.Equal(OperationKind.Literal, declarator.ChildOperations.First().Kind); 615Assert.Equal(OperationKind.VariableInitializer, declarator.ChildOperations.ElementAt(1).Kind); 635Assert.Equal(1, declarator.ChildOperations.Count()); 636Assert.Equal(OperationKind.Literal, declarator.ChildOperations.First().Kind); 656Assert.Equal(1, declarator.ChildOperations.Count()); 657Assert.Equal(OperationKind.VariableInitializer, declarator.ChildOperations.ElementAt(0).Kind); 676Assert.Empty(operation.ChildOperations); 851Assert.Equal(2, declaration.ChildOperations.Count()); 852Assert.Equal(OperationKind.Literal, declaration.ChildOperations.First().Kind); 853Assert.Equal(OperationKind.VariableDeclarator, declaration.ChildOperations.ElementAt(1).Kind); 873Assert.Equal(2, declaration.ChildOperations.Count()); 874Assert.Equal(OperationKind.Literal, declaration.ChildOperations.First().Kind); 875Assert.Equal(OperationKind.VariableDeclarator, declaration.ChildOperations.ElementAt(1).Kind);
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (1)
Semantics\OperatorTests.cs (1)
12485foreach (var child in iop.ChildOperations)
Microsoft.CodeAnalysis.Features (3)
src\Analyzers\Core\CodeFixes\UseConditionalExpression\ForAssignment\AbstractUseConditionalExpressionForAssignmentCodeFixProvider.cs (1)
262foreach (var child in operation.ChildOperations)
ValueTracking\ValueTracker.OperationCollector.cs (2)
91foreach (var child in operation.ChildOperations) 96return operation.ChildOperations.Any();
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Utilities\NullableHelpers.cs (1)
128foreach (var childOperation in operation.ChildOperations.Reverse())
Microsoft.CodeAnalysis.Test.Utilities (145)
CommonTestBase.cs (1)
618foreach (var child in operation.ChildOperations)
Compilation\OperationTreeVerifier.cs (2)
384Debug.Assert(operation.ChildOperations.All(o => o != null)); 386var children = operation.ChildOperations.ToImmutableArray();
Compilation\TestOperationVisitor.cs (142)
68foreach (IOperation child in operation.ChildOperations) 78Assert.Same(builder[0], operation.ChildOperations.First()); 79Assert.Same(builder[^1], operation.ChildOperations.Last()); 81var forwards = operation.ChildOperations.GetEnumerator(); 88var reversed = operation.ChildOperations.Reverse().GetEnumerator(); 97Assert.Throws<InvalidOperationException>(() => operation.ChildOperations.First()); 98Assert.Throws<InvalidOperationException>(() => operation.ChildOperations.Last()); 101foreach (IOperation child in operation.ChildOperations.Reverse()) 123AssertEx.Equal(operation.Operations, operation.ChildOperations); 129AssertEx.Equal(operation.Declarations, operation.ChildOperations); 144AssertEx.Equal(children, operation.ChildOperations); 158AssertEx.Equal(children, operation.ChildOperations); 166AssertEx.Equal(new[] { operation.Value }.Concat(operation.Cases), operation.ChildOperations); 173AssertEx.Equal(operation.Clauses.Concat(operation.Body), operation.ChildOperations); 218AssertEx.Equal(new[] { operation.Value }, operation.ChildOperations); 233AssertEx.Equal(new[] { operation.Value }, operation.ChildOperations); 240Assert.Empty(operation.ChildOperations); 286AssertEx.Equal(children, operation.ChildOperations); 306AssertEx.Equal(children, operation.ChildOperations); 327AssertEx.Equal(children, operation.ChildOperations); 336AssertEx.Equal(children, operation.ChildOperations); 373Assert.Empty(operation.ChildOperations); 377Assert.Same(operation.Operation, operation.ChildOperations.Single()); 397Assert.Empty(operation.ChildOperations); 403Assert.Empty(operation.ChildOperations); 412Assert.Empty(operation.ChildOperations); 416Assert.Same(operation.ReturnedValue, operation.ChildOperations.Single()); 423AssertEx.Equal(new[] { operation.LockedValue, operation.Body }, operation.ChildOperations); 437AssertEx.Equal(children, operation.ChildOperations); 458AssertEx.Equal(children, operation.ChildOperations); 465AssertEx.Equal(new[] { operation.Resources, operation.Body }, operation.ChildOperations); 485AssertEx.Equal(new[] { operation.Variables, operation.Body }, operation.ChildOperations); 491AssertEx.Equal([.. operation.ConstructArguments, .. operation.Elements], operation.ChildOperations); 497Assert.Same(operation.Operand, operation.ChildOperations.Single()); 503AssertEx.Equal(new[] { operation.Group, operation.Aggregation }, operation.ChildOperations); 509Assert.Same(operation.Operation, operation.ChildOperations.Single()); 515AssertEx.Equal(new[] { operation.Value, operation.Body }, operation.ChildOperations); 521Assert.Empty(operation.ChildOperations); 527Assert.Empty(operation.ChildOperations); 552AssertEx.Equal(children, operation.ChildOperations); 574AssertEx.Equal(children, operation.ChildOperations); 583Assert.Same(operation.Value, operation.ChildOperations.Single()); 596Assert.Empty(operation.ChildOperations); 602AssertEx.Equal(new[] { operation.ArrayReference }.Concat(operation.Indices), operation.ChildOperations); 608AssertEx.Equal(new[] { operation.Instance, operation.Argument }, operation.ChildOperations); 617AssertEx.Equal(new[] { operation.Instance, operation.Argument }, operation.ChildOperations); 623Assert.Same(operation.Pointer, operation.ChildOperations.Single()); 631Assert.Empty(operation.ChildOperations); 638Assert.Empty(operation.ChildOperations); 644Assert.Empty(operation.ChildOperations); 677AssertEx.Equal(children, operation.ChildOperations); 724AssertEx.Equal(new[] { operation.EventReference, operation.HandlerValue }, operation.ChildOperations); 731AssertEx.Equal(new[] { operation.Operation, operation.WhenNotNull }, operation.ChildOperations); 737Assert.Empty(operation.ChildOperations); 743Assert.Empty(operation.ChildOperations); 749Assert.Empty(operation.ChildOperations); 762Assert.Same(operation.Operand, operation.ChildOperations.Single()); 797AssertEx.Equal(new[] { operation.LeftOperand, operation.RightOperand }, operation.ChildOperations); 842AssertEx.Equal(new[] { operation.LeftOperand, operation.RightOperand }, operation.ChildOperations); 870Assert.Same(operation.Operand, operation.ChildOperations.Single()); 900AssertEx.Equal(new[] { operation.Condition, operation.WhenTrue, operation.WhenFalse }, operation.ChildOperations); 904AssertEx.Equal(new[] { operation.Condition, operation.WhenTrue }, operation.ChildOperations); 911AssertEx.Equal(new[] { operation.Value, operation.WhenNull }, operation.ChildOperations); 918AssertEx.Equal(new[] { operation.Target, operation.Value }, operation.ChildOperations); 926Assert.Same(operation.ValueOperand, operation.ChildOperations.Single()); 933Assert.Empty(operation.ChildOperations); 940Assert.Empty(operation.ChildOperations); 947Assert.Same(operation.Body, operation.ChildOperations.Single()); 954Assert.Empty(operation.ChildOperations); 964var children = operation.ChildOperations.ToImmutableArray(); 979Assert.Empty(operation.ChildOperations); 986Assert.Empty(operation.ChildOperations); 992Assert.Empty(operation.ChildOperations); 999Assert.Same(operation.Operation, operation.ChildOperations.Single()); 1005Assert.Same(operation.Argument, operation.ChildOperations.Single()); 1013Assert.Empty(operation.ChildOperations); 1017Assert.Same(operation.Exception, operation.ChildOperations.Single()); 1024Assert.Same(operation.Reference, operation.ChildOperations.Single()); 1049AssertEx.Equal(children, operation.ChildOperations); 1055AssertEx.Equal(operation.Initializers, operation.ChildOperations); 1076AssertEx.Equal(children, operation.ChildOperations); 1082AssertEx.Equal(new[] { operation.Operation }.Concat(operation.Arguments), operation.ChildOperations); 1088AssertEx.Equal(new[] { operation.Operation }.Concat(operation.Arguments), operation.ChildOperations); 1094AssertEx.Equal(operation.Initializers, operation.ChildOperations); 1100AssertEx.Equal(new[] { operation.InitializedMember, operation.Initializer }, operation.ChildOperations); 1106Assert.Same(operation.Value, operation.ChildOperations.Single()); 1153AssertEx.Equal(children, operation.ChildOperations); 1160AssertEx.Equal(operation.ElementValues, operation.ChildOperations); 1165AssertEx.Equal(new[] { operation.Target, operation.Value }, operation.ChildOperations); 1213Assert.Same(operation.Target, operation.ChildOperations.Single()); 1219Assert.Same(operation.Operand, operation.ChildOperations.Single()); 1236Assert.Empty(operation.ChildOperations); 1240Assert.Same(operation.Instance, operation.ChildOperations.Single()); 1247Assert.Empty(operation.ChildOperations); 1255Assert.Empty(operation.ChildOperations); 1259Assert.Same(operation.Initializer, operation.ChildOperations.Single()); 1268Assert.Empty(operation.ChildOperations); 1272Assert.Same(operation.Initializer, operation.ChildOperations.Single()); 1285AssertEx.Equal(operation.Elements, operation.ChildOperations); 1291AssertEx.Equal(operation.Parts, operation.ChildOperations); 1301Assert.Same(operation.Text, operation.ChildOperations.Single()); 1322AssertEx.Equal(children, operation.ChildOperations); 1329AssertEx.Equal(children, operation.ChildOperations); 1339AssertEx.Equal(new[] { operation.Left, operation.Right }, operation.ChildOperations); 1376Assert.Same(operation.Value, operation.ChildOperations.Single()); 1389Assert.Same(operation.Value, operation.ChildOperations.Single()); 1397var children = operation.ChildOperations.ToArray(); 1407Assert.Same(operation.Pattern, operation.ChildOperations.Single()); 1415Assert.Empty(operation.ChildOperations); 1448Assert.Empty(operation.ChildOperations); 1458Assert.Same(operation.Pattern, operation.ChildOperations.Single()); 1462Assert.Empty(operation.ChildOperations); 1481AssertEx.Equal(children, operation.ChildOperations); 1525AssertEx.Equal(children, operation.ChildOperations); 1532AssertEx.Equal(children, operation.ChildOperations); 1561AssertEx.Equal(children, operation.ChildOperations); 1575AssertEx.Equal(children, operation.ChildOperations); 1581AssertEx.Equal(new[] { operation.Value, operation.Pattern }, operation.ChildOperations); 1592AssertEx.Equal(new[] { operation.Pattern, operation.Guard }, operation.ChildOperations); 1596Assert.Same(operation.Pattern, operation.ChildOperations.Single()); 1603Assert.Same(operation.Operation, operation.ChildOperations.Single()); 1609Assert.Same(operation.Expression, operation.ChildOperations.Single()); 1621Assert.Same(operation.Target, operation.ChildOperations.Single()); 1627AssertEx.Equal(new IOperation[] { operation.EventReference }.Concat(operation.Arguments), operation.ChildOperations); 1634AssertEx.Equal(new[] { operation.MinimumValue, operation.MaximumValue }, operation.ChildOperations); 1660AssertEx.Equal(builder, operation.ChildOperations); 1673AssertEx.Equal(new[] { operation.BlockBody, operation.ExpressionBody }, operation.ChildOperations); 1677Assert.Same(operation.BlockBody, operation.ChildOperations.Single()); 1682Assert.Same(operation.ExpressionBody, operation.ChildOperations.Single()); 1686Assert.Empty(operation.ChildOperations); 1693Assert.Empty(operation.ChildOperations); 1703Assert.Empty(operation.ChildOperations); 1710Assert.Same(operation.Value, operation.ChildOperations.Single()); 1742Assert.Empty(operation.ChildOperations); 1749Assert.Same(operation.Operand, operation.ChildOperations.Single()); 1756Assert.Empty(operation.ChildOperations); 1763Assert.Empty(operation.ChildOperations); 1772IOperation[] children = operation.ChildOperations.ToArray(); 1792AssertEx.Equal(operation.Clauses, operation.ChildOperations); 1799AssertEx.Equal(SpecializedCollections.SingletonEnumerable(operation.Operand).Concat(operation.DimensionSizes), operation.ChildOperations); 1805AssertEx.Equal(SpecializedCollections.SingletonEnumerable(operation.DeclarationGroup), operation.ChildOperations); 1828AssertEx.Equal(children, operation.ChildOperations);
Microsoft.CodeAnalysis.Workspaces (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Utilities\NullableHelpers.cs (1)
128foreach (var childOperation in operation.ChildOperations.Reverse())
Roslyn.Diagnostics.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Utilities\NullableHelpers.cs (1)
128foreach (var childOperation in operation.ChildOperations.Reverse())
Text.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Utilities\NullableHelpers.cs (1)
128foreach (var childOperation in operation.ChildOperations.Reverse())