102 types derived from Operation
Microsoft.CodeAnalysis (102)
Generated\Operations.Generated.cs (98)
3999
internal sealed partial class BlockOperation :
Operation
, IBlockOperation
4056
internal sealed partial class VariableDeclarationGroupOperation :
Operation
, IVariableDeclarationGroupOperation
4111
internal sealed partial class SwitchOperation :
Operation
, ISwitchOperation
4181
internal abstract partial class BaseLoopOperation :
Operation
, ILoopOperation
4515
internal sealed partial class LabeledOperation :
Operation
, ILabeledOperation
4568
internal sealed partial class BranchOperation :
Operation
, IBranchOperation
4588
internal sealed partial class EmptyOperation :
Operation
, IEmptyOperation
4602
internal sealed partial class ReturnOperation :
Operation
, IReturnOperation
4654
internal sealed partial class LockOperation :
Operation
, ILockOperation
4718
internal sealed partial class TryOperation :
Operation
, ITryOperation
4797
internal sealed partial class UsingOperation :
Operation
, IUsingOperation
4865
internal sealed partial class ExpressionStatementOperation :
Operation
, IExpressionStatementOperation
4916
internal sealed partial class LocalFunctionOperation :
Operation
, ILocalFunctionOperation
4980
internal sealed partial class StopOperation :
Operation
, IStopOperation
4994
internal sealed partial class EndOperation :
Operation
, IEndOperation
5008
internal sealed partial class RaiseEventOperation :
Operation
, IRaiseEventOperation
5074
internal sealed partial class LiteralOperation :
Operation
, ILiteralOperation
5092
internal sealed partial class ConversionOperation :
Operation
, IConversionOperation
5152
internal sealed partial class InvocationOperation :
Operation
, IInvocationOperation
5225
internal sealed partial class ArrayElementReferenceOperation :
Operation
, IArrayElementReferenceOperation
5292
internal sealed partial class LocalReferenceOperation :
Operation
, ILocalReferenceOperation
5314
internal sealed partial class ParameterReferenceOperation :
Operation
, IParameterReferenceOperation
5333
internal abstract partial class BaseMemberReferenceOperation :
Operation
, IMemberReferenceOperation
5577
internal sealed partial class UnaryOperation :
Operation
, IUnaryOperation
5640
internal sealed partial class BinaryOperation :
Operation
, IBinaryOperation
5718
internal sealed partial class ConditionalOperation :
Operation
, IConditionalOperation
5795
internal sealed partial class CoalesceOperation :
Operation
, ICoalesceOperation
5862
internal sealed partial class AnonymousFunctionOperation :
Operation
, IAnonymousFunctionOperation
5915
internal sealed partial class ObjectCreationOperation :
Operation
, IObjectCreationOperation
5985
internal sealed partial class TypeParameterObjectCreationOperation :
Operation
, ITypeParameterObjectCreationOperation
6037
internal sealed partial class ArrayCreationOperation :
Operation
, IArrayCreationOperation
6104
internal sealed partial class InstanceReferenceOperation :
Operation
, IInstanceReferenceOperation
6123
internal sealed partial class IsTypeOperation :
Operation
, IIsTypeOperation
6179
internal sealed partial class AwaitOperation :
Operation
, IAwaitOperation
6231
internal abstract partial class BaseAssignmentOperation :
Operation
, IAssignmentOperation
6379
internal sealed partial class ParenthesizedOperation :
Operation
, IParenthesizedOperation
6432
internal sealed partial class EventAssignmentOperation :
Operation
, IEventAssignmentOperation
6497
internal sealed partial class ConditionalAccessOperation :
Operation
, IConditionalAccessOperation
6560
internal sealed partial class ConditionalAccessInstanceOperation :
Operation
, IConditionalAccessInstanceOperation
6577
internal sealed partial class InterpolatedStringOperation :
Operation
, IInterpolatedStringOperation
6634
internal sealed partial class AnonymousObjectCreationOperation :
Operation
, IAnonymousObjectCreationOperation
6690
internal sealed partial class ObjectOrCollectionInitializerOperation :
Operation
, IObjectOrCollectionInitializerOperation
6746
internal sealed partial class MemberInitializerOperation :
Operation
, IMemberInitializerOperation
6809
internal sealed partial class NameOfOperation :
Operation
, INameOfOperation
6862
internal sealed partial class TupleOperation :
Operation
, ITupleOperation
6920
internal sealed partial class DynamicMemberReferenceOperation :
Operation
, IDynamicMemberReferenceOperation
6978
internal sealed partial class TranslatedQueryOperation :
Operation
, ITranslatedQueryOperation
7030
internal sealed partial class DelegateCreationOperation :
Operation
, IDelegateCreationOperation
7082
internal sealed partial class DefaultValueOperation :
Operation
, IDefaultValueOperation
7100
internal sealed partial class TypeOfOperation :
Operation
, ITypeOfOperation
7119
internal sealed partial class SizeOfOperation :
Operation
, ISizeOfOperation
7139
internal sealed partial class AddressOfOperation :
Operation
, IAddressOfOperation
7191
internal sealed partial class IsPatternOperation :
Operation
, IIsPatternOperation
7254
internal sealed partial class IncrementOrDecrementOperation :
Operation
, IIncrementOrDecrementOperation
7317
internal sealed partial class ThrowOperation :
Operation
, IThrowOperation
7428
internal sealed partial class DeclarationExpressionOperation :
Operation
, IDeclarationExpressionOperation
7480
internal sealed partial class OmittedArgumentOperation :
Operation
, IOmittedArgumentOperation
7497
internal abstract partial class BaseSymbolInitializerOperation :
Operation
, ISymbolInitializerOperation
7708
internal sealed partial class ArrayInitializerOperation :
Operation
, IArrayInitializerOperation
7763
internal sealed partial class VariableDeclaratorOperation :
Operation
, IVariableDeclaratorOperation
7831
internal sealed partial class VariableDeclarationOperation :
Operation
, IVariableDeclarationOperation
7912
internal sealed partial class ArgumentOperation :
Operation
, IArgumentOperation
7973
internal sealed partial class CatchClauseOperation :
Operation
, ICatchClauseOperation
8050
internal sealed partial class SwitchCaseOperation :
Operation
, ISwitchCaseOperation
8124
internal abstract partial class BaseCaseClauseOperation :
Operation
, ICaseClauseOperation
8377
internal abstract partial class BaseInterpolatedStringContentOperation :
Operation
, IInterpolatedStringContentOperation
8506
internal abstract partial class BasePatternOperation :
Operation
, IPatternOperation
8590
internal sealed partial class TupleBinaryOperation :
Operation
, ITupleBinaryOperation
8655
internal abstract partial class BaseMethodBodyBaseOperation :
Operation
, IMethodBodyBaseOperation
8793
internal sealed partial class DiscardOperation :
Operation
, IDiscardOperation
8812
internal sealed partial class FlowCaptureOperation :
Operation
, IFlowCaptureOperation
8865
internal sealed partial class FlowCaptureReferenceOperation :
Operation
, IFlowCaptureReferenceOperation
8887
internal sealed partial class IsNullOperation :
Operation
, IIsNullOperation
8940
internal sealed partial class CaughtExceptionOperation :
Operation
, ICaughtExceptionOperation
8957
internal sealed partial class StaticLocalInitializationSemaphoreOperation :
Operation
, IStaticLocalInitializationSemaphoreOperation
9035
internal sealed partial class RangeOperation :
Operation
, IRangeOperation
9102
internal sealed partial class ReDimOperation :
Operation
, IReDimOperation
9159
internal sealed partial class ReDimClauseOperation :
Operation
, IReDimClauseOperation
9315
internal sealed partial class SwitchExpressionOperation :
Operation
, ISwitchExpressionOperation
9384
internal sealed partial class SwitchExpressionArmOperation :
Operation
, ISwitchExpressionArmOperation
9459
internal sealed partial class PropertySubpatternOperation :
Operation
, IPropertySubpatternOperation
9521
internal sealed partial class AggregateQueryOperation :
Operation
, IAggregateQueryOperation
9584
internal sealed partial class FixedOperation :
Operation
, IFixedOperation
9648
internal sealed partial class NoPiaObjectCreationOperation :
Operation
, INoPiaObjectCreationOperation
9700
internal sealed partial class PlaceholderOperation :
Operation
, IPlaceholderOperation
9719
internal sealed partial class WithStatementOperation :
Operation
, IWithStatementOperation
9781
internal sealed partial class UsingDeclarationOperation :
Operation
, IUsingDeclarationOperation
10022
internal sealed partial class WithOperation :
Operation
, IWithOperation
10087
internal sealed partial class InterpolatedStringHandlerCreationOperation :
Operation
, IInterpolatedStringHandlerCreationOperation
10154
internal sealed partial class InterpolatedStringAdditionOperation :
Operation
, IInterpolatedStringAdditionOperation
10268
internal sealed partial class InterpolatedStringHandlerArgumentPlaceholderOperation :
Operation
, IInterpolatedStringHandlerArgumentPlaceholderOperation
10288
internal sealed partial class FunctionPointerInvocationOperation :
Operation
, IFunctionPointerInvocationOperation
10469
internal sealed partial class ImplicitIndexerReferenceOperation :
Operation
, IImplicitIndexerReferenceOperation
10536
internal sealed partial class Utf8StringOperation :
Operation
, IUtf8StringOperation
10555
internal sealed partial class AttributeOperation :
Operation
, IAttributeOperation
10606
internal sealed partial class InlineArrayAccessOperation :
Operation
, IInlineArrayAccessOperation
10669
internal sealed partial class CollectionExpressionOperation :
Operation
, ICollectionExpressionOperation
10727
internal sealed partial class SpreadOperation :
Operation
, ISpreadOperation
Operations\OperationNodes.cs (4)
16
internal sealed class NoneOperation :
Operation
85
internal sealed partial class InvalidOperation :
Operation
, IInvalidOperation
150
internal sealed class FlowAnonymousFunctionOperation :
Operation
, IFlowAnonymousFunctionOperation
233
internal abstract partial class HasDynamicArgumentsExpression :
Operation
42 references to Operation
Microsoft.CodeAnalysis (42)
Operations\ControlFlowGraph.cs (1)
185
if (((
Operation
)operation).OwningSemanticModel == null)
Operations\ControlFlowGraphBuilder.cs (15)
90
Debug.Assert(((
Operation
)body).OwningSemanticModel != null);
114
var builder = new ControlFlowGraphBuilder(((
Operation
)body).OwningSemanticModel!.Compilation, captureIdDispenser, blocks);
1290
Operation
.SetParentOperation(statement, null);
1403
Debug.Assert(((
Operation
)originalOperation).OwningSemanticModel != null, "Not an original node.");
2970
Operation
.SetParentOperation(condition, null);
3485
Operation
currentOperation = (
Operation
)operation;
3497
currentOperation = (
Operation
)enumerator.Current;
3844
current.BranchValue =
Operation
.SetParentOperation(returnedValue, null);
3943
current.BranchValue =
Operation
.SetParentOperation(exception, null);
6760
VisitStatements(((
Operation
)operation).ChildOperations.ToImmutableArray());
6767
new NoneOperation(VisitArray(((
Operation
)operation).ChildOperations.ToImmutableArray()), semanticModel: null, operation.Syntax, operation.Type, operation.GetConstantValue(), IsImplicit(operation)));
7833
BlockOperation logicalBlock = BlockOperation.CreateTemporaryBlock(statementsBuilder.ToImmutableAndFree(), ((
Operation
)operation).OwningSemanticModel!, operation.Syntax);
7857
Debug.Assert(operation == null || ((
Operation
)operation).OwningSemanticModel!.Compilation == _compilation);
7865
Debug.Assert(operation == null || ((
Operation
)operation).OwningSemanticModel!.Compilation == _compilation);
Operations\ControlFlowGraphBuilder.RegionBuilder.cs (1)
420
foreach (IOperation child in ((
Operation
)operation).ChildOperations)
Operations\IOperation.OperationList.cs (8)
19
/// Implements a struct-based collection of <see cref="
Operation
"/> nodes. This collection is ordered, but
25
private readonly
Operation
_operation;
27
internal OperationList(
Operation
operation)
95
/// Implements a struct-based enumerator for <see cref="
Operation
"/> nodes. This type is not hardened
104
/// members are delegated to the virtual <see cref="
Operation
.MoveNext(int, int)"/> and
105
/// <see cref="
Operation
.GetCurrent(int, int)"/> methods, respectively.
107
private readonly
Operation
_operation;
114
internal Enumerator(
Operation
operation)
Operations\IOperation.OperationList.Reversed.cs (6)
21
/// Implements a reverse-order struct-based collection of <see cref="
Operation
"/> nodes.
27
private readonly
Operation
_operation;
29
internal Reversed(
Operation
operation)
83
/// Implements a reverse-order struct-based enumerator for <see cref="
Operation
"/> nodes. This type is not hardened
90
private readonly
Operation
_operation;
94
internal Enumerator(
Operation
operation)
Operations\Operation.cs (2)
144
Debug.Assert(parent == null || ((
Operation
)parent).OwningSemanticModel == OwningSemanticModel);
152
(operation as
Operation
)?.SetParentOperation(parent);
Operations\OperationCloner.cs (6)
21
return new NoneOperation(VisitArray(((
Operation
)operation).ChildOperations.ToImmutableArray()), ((
Operation
)operation).OwningSemanticModel, operation.Syntax, operation.Type, operation.GetConstantValue(), operation.IsImplicit);
32
return new DynamicObjectCreationOperation(Visit(operation.Initializer), VisitArray(operation.Arguments), ((HasDynamicArgumentsExpression)operation).ArgumentNames, ((HasDynamicArgumentsExpression)operation).ArgumentRefKinds, ((
Operation
)operation).OwningSemanticModel, operation.Syntax, operation.Type, operation.IsImplicit);
37
return new DynamicInvocationOperation(Visit(operation.Operation), VisitArray(operation.Arguments), ((HasDynamicArgumentsExpression)operation).ArgumentNames, ((HasDynamicArgumentsExpression)operation).ArgumentRefKinds, ((
Operation
)operation).OwningSemanticModel, operation.Syntax, operation.Type, operation.IsImplicit);
42
return new DynamicIndexerAccessOperation(Visit(operation.Operation), VisitArray(operation.Arguments), ((HasDynamicArgumentsExpression)operation).ArgumentNames, ((HasDynamicArgumentsExpression)operation).ArgumentRefKinds, ((
Operation
)operation).OwningSemanticModel, operation.Syntax, operation.Type, operation.IsImplicit);
47
return new InvalidOperation(VisitArray(((InvalidOperation)operation).Children), ((
Operation
)operation).OwningSemanticModel, operation.Syntax, operation.Type, operation.GetConstantValue(), operation.IsImplicit);
Operations\OperationExtensions.cs (1)
390
return ((
Operation
)operation).OperationConstantValue;
Operations\OperationWalker.cs (2)
17
foreach (var child in ((
Operation
)operation).ChildOperations)
61
foreach (var child in ((
Operation
)operation).ChildOperations)