ICompoundAssignmentOperation Interface

Definition

Represents a compound assignment that mutates the target with the result of a binary operation.

Current usage: (1) C# compound assignment expression. (2) VB compound assignment expression.

public interface class ICompoundAssignmentOperation : Microsoft::CodeAnalysis::Operations::IAssignmentOperation
public interface ICompoundAssignmentOperation : Microsoft.CodeAnalysis.Operations.IAssignmentOperation
type ICompoundAssignmentOperation = interface
    interface IAssignmentOperation
    interface IOperation
Public Interface ICompoundAssignmentOperation
Implements IAssignmentOperation
Implements

Remarks

This node is associated with the following operation kinds:

This interface is reserved for implementation by its associated APIs. We reserve the right to change it in the future.

Properties

ChildOperations

An enumerable of child operations for this operation.

(Inherited from IOperation)
Children
Obsolete.

An array of child operations for this operation. Deprecated: please use ChildOperations.

(Inherited from IOperation)
ConstantValue

If the operation is an expression that evaluates to a constant value, HasValue is true and Value is the value of the expression. Otherwise, HasValue is false.

(Inherited from IOperation)
ConstrainedToType

Type parameter which runtime type will be used to resolve virtual invocation of the OperatorMethod, if any. Null if OperatorMethod is resolved statically, or is null.

InConversion

Conversion applied to Target before the operation occurs.

IsChecked

true if overflow checking is performed for the arithmetic operation.

IsImplicit

Set to True if compiler generated /implicitly computed by compiler code

(Inherited from IOperation)
IsLifted

true if this assignment contains a 'lifted' binary operation.

Kind

Identifies the kind of the operation.

(Inherited from IOperation)
Language

The source language of the IOperation. Possible values are CSharp and VisualBasic.

(Inherited from IOperation)
OperatorKind

Kind of binary operation.

OperatorMethod

Operator method used by the operation, null if the operation does not use an operator method.

OutConversion

Conversion applied to the result of the binary operation, before it is assigned back to Target.

Parent

IOperation that has this operation as a child. Null for the root.

(Inherited from IOperation)
SemanticModel

Optional semantic model that was used to generate this operation. Non-null for operations generated from source with GetOperation(SyntaxNode, CancellationToken) API and operation callbacks made to analyzers. Null for operations inside a ControlFlowGraph.

(Inherited from IOperation)
Syntax

Syntax that was analyzed to produce the operation.

(Inherited from IOperation)
Target

Target of the assignment.

(Inherited from IAssignmentOperation)
Type

Result type of the operation, or null if the operation does not produce a result.

(Inherited from IOperation)
Value

Value to be assigned to the target of the assignment.

(Inherited from IAssignmentOperation)

Methods

Accept(OperationVisitor) (Inherited from IOperation)
Accept<TArgument,TResult>(OperationVisitor<TArgument,TResult>, TArgument) (Inherited from IOperation)

Extension Methods

GetInConversion(ICompoundAssignmentOperation)

Gets the underlying Conversion information from this ICompoundAssignmentOperation. This conversion is applied before the operator is applied to the result of this conversion and Value.

GetOutConversion(ICompoundAssignmentOperation)

Gets the underlying Conversion information from this ICompoundAssignmentOperation. This conversion is applied after the operator is applied, before the result is assigned to Target.

Descendants(IOperation)

Returns all the descendant operations of the given operation in evaluation order.

DescendantsAndSelf(IOperation)

Returns all the descendant operations of the given operation including the given operation in evaluation order.

GetInConversion(ICompoundAssignmentOperation)

Gets the underlying Conversion information from this ICompoundAssignmentOperation. This conversion is applied before the operator is applied to the result of this conversion and Value.

GetOutConversion(ICompoundAssignmentOperation)

Gets the underlying Conversion information from this ICompoundAssignmentOperation. This conversion is applied after the operator is applied, before the result is assigned to Target.

Applies to