1 implementation of Operations
Microsoft.CodeAnalysis (1)
Generated\Operations.Generated.cs (1)
3634public ImmutableArray<IOperation> Operations { get; }
76 references to Operations
Microsoft.CodeAnalysis (1)
Operations\ControlFlowGraphBuilder.cs (1)
1387VisitStatements(operation.Operations);
Microsoft.CodeAnalysis.CodeStyle (16)
AbstractUseThrowExpressionDiagnosticAnalyzer.cs (5)
140var statements = containingBlock.Operations; 173var ifOperationIndex = containingBlock.Operations.IndexOf(ifOperation); 177for (var i = ifOperationIndex + 1; i < containingBlock.Operations.Length; i++) 179expressionStatement = containingBlock.Operations[i] as IExpressionStatementOperation; 279if (block.Operations.Length != 1)
HashCodeAnalyzer.cs (2)
77while (blockOperation.Operations is [IBlockOperation childBlock]) 80var statements = blockOperation.Operations.WhereAsArray(o => !o.IsImplicit);
OperationExtensions.cs (4)
403if (block.Operations.Length == 0) 406var firstOp = block.Operations.Length == 1 407? block.Operations[0] 408: TryGetSingleExplicitStatement(block.Operations);
UseConditionalExpressionForReturnHelpers.cs (3)
52var ifIndex = parentBlock.Operations.IndexOf(ifOperation); 56if (ifIndex + 1 >= parentBlock.Operations.Length) 59falseStatement = parentBlock.Operations[ifIndex + 1];
UseConditionalExpressionHelpers.cs (2)
60=> statement is IBlockOperation block && block.Operations.Length == 1 61? block.Operations[0]
Microsoft.CodeAnalysis.CodeStyle.Fixes (2)
AbstractUseConditionalExpressionForAssignmentCodeFixProvider.cs (2)
194var ifIndex = parentBlock.Operations.IndexOf(ifOperation); 200localDeclaration = parentBlock.Operations[ifIndex - 1] as IVariableDeclarationGroupOperation;
Microsoft.CodeAnalysis.CSharp.CodeStyle (1)
CSharpMakeStructMemberReadOnlyAnalyzer.cs (1)
89if (blockOperation is IBlockOperation { Operations: [IThrowOperation or IExpressionStatementOperation { Operation: IThrowOperation }] })
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (9)
ConvertToRecordHelpers.cs (9)
40Operations: [IReturnOperation 117Operations: [IReturnOperation { ReturnedValue: IOperation returnedValue }] 135Operations: [IReturnOperation 187if (GetBlockOfMethodBody(operation) is not { Operations.Length: int opLength } || 229if (GetBlockOfMethodBody(operation) is not { Operations.Length: int opLength } || 431foreach (var operation in body.Operations) 502var bodyOps = body.Operations; 1063var trueOps = ((whenTrue as IBlockOperation)?.Operations ?? ImmutableArray.Create(whenTrue)) 1065var falseOps = ((whenFalse as IBlockOperation)?.Operations ??
Microsoft.CodeAnalysis.CSharp.Features (12)
ConvertIfToSwitch\CSharpConvertIfToSwitchCodeRefactoringProvider.Rewriting.cs (1)
64IBlockOperation op => AsExpressionSyntax(op.Operations.Single()),
ConvertToRecordHelpers.cs (9)
40Operations: [IReturnOperation 117Operations: [IReturnOperation { ReturnedValue: IOperation returnedValue }] 135Operations: [IReturnOperation 187if (GetBlockOfMethodBody(operation) is not { Operations.Length: int opLength } || 229if (GetBlockOfMethodBody(operation) is not { Operations.Length: int opLength } || 431foreach (var operation in body.Operations) 502var bodyOps = body.Operations; 1063var trueOps = ((whenTrue as IBlockOperation)?.Operations ?? ImmutableArray.Create(whenTrue)) 1065var falseOps = ((whenFalse as IBlockOperation)?.Operations ??
CSharpMakeStructMemberReadOnlyAnalyzer.cs (1)
89if (blockOperation is IBlockOperation { Operations: [IThrowOperation or IExpressionStatementOperation { Operation: IThrowOperation }] })
InitializeParameter\CSharpInitializeMemberFromParameterCodeRefactoringProvider.cs (1)
171foreach (var operation in blockOperation.Operations)
Microsoft.CodeAnalysis.Features (26)
AbstractUseConditionalExpressionForAssignmentCodeFixProvider.cs (2)
194var ifIndex = parentBlock.Operations.IndexOf(ifOperation); 200localDeclaration = parentBlock.Operations[ifIndex - 1] as IVariableDeclarationGroupOperation;
AbstractUseThrowExpressionDiagnosticAnalyzer.cs (5)
140var statements = containingBlock.Operations; 173var ifOperationIndex = containingBlock.Operations.IndexOf(ifOperation); 177for (var i = ifOperationIndex + 1; i < containingBlock.Operations.Length; i++) 179expressionStatement = containingBlock.Operations[i] as IExpressionStatementOperation; 279if (block.Operations.Length != 1)
ConvertIfToSwitch\AbstractConvertIfToSwitchCodeRefactoringProvider.Analyzer.cs (1)
177? ParseIfStatementSequence(block.Operations.AsSpan(), sections, out defaultBodyOpt)
ConvertIfToSwitch\AbstractConvertIfToSwitchCodeRefactoringProvider.cs (2)
93var operations = parentBlock.Operations; 147case IBlockOperation { Operations: { Length: 1 } statements }:
HashCodeAnalyzer.cs (2)
77while (blockOperation.Operations is [IBlockOperation childBlock]) 80var statements = blockOperation.Operations.WhereAsArray(o => !o.IsImplicit);
InitializeParameter\AbstractAddParameterCheckCodeRefactoringProvider.cs (5)
278foreach (var statement in blockStatementOpt.Operations) 436var statementIndex = blockStatement.Operations.IndexOf(checkStatement); 437return statementIndex > 0 ? blockStatement.Operations[statementIndex - 1].Syntax : null; 458foreach (var statement in blockStatement.Operations) 502foreach (var statement in blockStatement.Operations)
InitializeParameter\AbstractInitializeMemberFromParameterCodeRefactoringProviderMemberCreation.cs (4)
635var statementIndex = blockStatement!.Operations.IndexOf(statement); 636return statementIndex > 0 ? blockStatement.Operations[statementIndex - 1].Syntax : null; 680foreach (var statement in blockStatement.Operations) 791foreach (var statement in blockStatement.Operations)
J\s\src\Analyzers\Core\Analyzers\UseConditionalExpression\UseConditionalExpressionHelpers.cs\UseConditionalExpressionHelpers.cs (2)
60=> statement is IBlockOperation block && block.Operations.Length == 1 61? block.Operations[0]
UseConditionalExpressionForReturnHelpers.cs (3)
52var ifIndex = parentBlock.Operations.IndexOf(ifOperation); 56if (ifIndex + 1 >= parentBlock.Operations.Length) 59falseStatement = parentBlock.Operations[ifIndex + 1];
Microsoft.CodeAnalysis.Test.Utilities (5)
Compilation\OperationTreeVerifier.cs (2)
444var statementsStr = $"{operation.Operations.Length} statements"; 449if (operation.Operations.IsEmpty)
Compilation\TestOperationVisitor.cs (1)
122AssertEx.Equal(operation.Operations, operation.ChildOperations);
Diagnostics\OperationTestAnalyzer.cs (2)
1321if (block.Operations.Length > 3) 1326foreach (var statement in block.Operations)
Microsoft.CodeAnalysis.Workspaces (4)
OperationExtensions.cs (4)
403if (block.Operations.Length == 0) 406var firstOp = block.Operations.Length == 1 407? block.Operations[0] 408: TryGetSingleExplicitStatement(block.Operations);