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