4 interfaces inheriting from IAssignmentOperation
Microsoft.CodeAnalysis (4)
Generated\Operations.Generated.cs (4)
1372public interface ISimpleAssignmentOperation : IAssignmentOperation 1395public interface ICompoundAssignmentOperation : IAssignmentOperation 2078public interface IDeconstructionAssignmentOperation : IAssignmentOperation 2867public interface ICoalesceAssignmentOperation : IAssignmentOperation
1 implementation of IAssignmentOperation
Microsoft.CodeAnalysis (1)
Generated\Operations.Generated.cs (1)
5858internal abstract partial class BaseAssignmentOperation : Operation, IAssignmentOperation
62 references to IAssignmentOperation
Microsoft.CodeAnalysis (8)
Generated\Operations.Generated.cs (8)
1398/// Conversion applied to <see cref="IAssignmentOperation.Target" /> before the operation occurs. 1403/// <see cref="IAssignmentOperation.Target" />. 2851/// (1) <see cref="IAssignmentOperation.Target" /> is evaluated for null. If it is null, <see cref="IAssignmentOperation.Value" /> is evaluated and assigned to target. 2852/// (2) <see cref="IAssignmentOperation.Value" /> is conditionally evaluated if <see cref="IAssignmentOperation.Target" /> is null, and the result is assigned into <see cref="IAssignmentOperation.Target" />. 2853/// The result of the entire expression is<see cref="IAssignmentOperation.Target" />, which is only evaluated once.
Microsoft.CodeAnalysis.CodeStyle (13)
AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.BlockAnalyzer.cs (2)
165if (value is IAssignmentOperation or 602if (unusedSymbolWriteOperation.Parent is IAssignmentOperation assignment &&
AbstractUseThrowExpressionDiagnosticAnalyzer.cs (4)
110out var expressionStatement, out var assignmentExpression)) 138private static bool ValueIsAccessed(SemanticModel semanticModel, IConditionalOperation ifOperation, IBlockOperation containingBlock, ISymbol localOrParameter, IExpressionStatementOperation expressionStatement, IAssignmentOperation assignmentExpression) 171[NotNullWhen(true)] out IAssignmentOperation? assignmentExpression) 185assignmentExpression = expressionStatement.Operation as IAssignmentOperation;
LValueFlowCaptureProvider.cs (1)
56if (flowCaptureReference.Parent is IAssignmentOperation assignment &&
OperationExtensions.cs (2)
19=> operation.Parent is IAssignmentOperation assignmentOperation && 122if (operation.Parent is IAssignmentOperation assignmentOperation &&
SymbolUsageAnalysis.Walker.cs (4)
30private PooledDictionary<IAssignmentOperation, PooledHashSet<(ISymbol, IOperation)>> _pendingWritesMap; 59_pendingWritesMap = PooledDictionary<IAssignmentOperation, PooledHashSet<(ISymbol, IOperation)>>.GetInstance(); 164if (operation.Parent is IAssignmentOperation assignmentOperation && 187private void ProcessPendingWritesForAssignmentTarget(IAssignmentOperation operation)
Microsoft.CodeAnalysis.CSharp (2)
CSharpExtensions.cs (2)
805/// conversion is applied before the operator is applied to the result of this conversion and <see cref="IAssignmentOperation.Value"/>. 831/// conversion is applied after the operator is applied, before the result is assigned to <see cref="IAssignmentOperation.Target"/>.
Microsoft.CodeAnalysis.CSharp.CodeStyle (2)
CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (2)
95var operationAssigmnent = (IAssignmentOperation)context.Operation;
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (1)
NullableHelpers.cs (1)
103IAssignmentOperation assignment => IsSymbolReferencedByOperation(assignment.Target, symbol),
Microsoft.CodeAnalysis.CSharp.Features (2)
CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (2)
95var operationAssigmnent = (IAssignmentOperation)context.Operation;
Microsoft.CodeAnalysis.CSharp.IOperation.UnitTests (2)
IOperation\IOperationTests_IConversionExpression.cs (2)
5214var iopTree = (IAssignmentOperation)model.GetOperation(assignment);
Microsoft.CodeAnalysis.CSharp.Workspaces (1)
NullableHelpers.cs (1)
103IAssignmentOperation assignment => IsSymbolReferencedByOperation(assignment.Target, symbol),
Microsoft.CodeAnalysis.Features (18)
AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.BlockAnalyzer.cs (2)
165if (value is IAssignmentOperation or 602if (unusedSymbolWriteOperation.Parent is IAssignmentOperation assignment &&
AbstractUseThrowExpressionDiagnosticAnalyzer.cs (4)
110out var expressionStatement, out var assignmentExpression)) 138private static bool ValueIsAccessed(SemanticModel semanticModel, IConditionalOperation ifOperation, IBlockOperation containingBlock, ISymbol localOrParameter, IExpressionStatementOperation expressionStatement, IAssignmentOperation assignmentExpression) 171[NotNullWhen(true)] out IAssignmentOperation? assignmentExpression) 185assignmentExpression = expressionStatement.Operation as IAssignmentOperation;
InitializeParameter\AbstractAddParameterCheckCodeRefactoringProvider.cs (1)
504if (IsFieldOrPropertyAssignment(statement, containingType, out var assignmentExpression) &&
InitializeParameter\AbstractInitializeMemberFromParameterCodeRefactoringProviderMemberCreation.cs (3)
683if (IsFieldOrPropertyAssignment(statement, containingType, out var assignmentExpression, out fieldOrProperty) && 712IAssignmentOperation assignmentExpression, IParameterSymbol parameter) 793if (IsFieldOrPropertyAssignment(statement, member.ContainingType, out var assignmentExpression) &&
InitializeParameter\AbstractInitializeParameterCodeRefactoringProvider.cs (3)
207protected static bool IsFieldOrPropertyAssignment(IOperation statement, INamedTypeSymbol containingType, [NotNullWhen(true)] out IAssignmentOperation? assignmentExpression) 212[NotNullWhen(true)] out IAssignmentOperation? assignmentExpression, 216expressionStatement.Operation is IAssignmentOperation assignment)
ValueTracking\ValueTracker.cs (2)
148IAssignmentOperation? assignmentOperation = null; 153assignmentOperation = operation as IAssignmentOperation;
ValueTracking\ValueTracker.OperationCollector.cs (3)
42IAssignmentOperation assignmentOperation => VisitAssignmentOperationAsync(assignmentOperation, cancellationToken), 103private Task VisitAssignmentOperationAsync(IAssignmentOperation assignmentOperation, CancellationToken cancellationToken) 137if (IsContainedIn<IReturnOperation>(operation) || IsContainedIn<IAssignmentOperation>(operation))
Microsoft.CodeAnalysis.Test.Utilities (4)
Compilation\TestOperationVisitor.cs (1)
1138private void VisitAssignment(IAssignmentOperation operation)
Diagnostics\CouldHaveMoreSpecificTypeAnalyzer.cs (1)
60if (operationContext.Operation is IAssignmentOperation assignment)
Diagnostics\FieldCouldBeReadOnlyAnalyzer.cs (1)
54if (operationContext.Operation is IAssignmentOperation assignment)
Diagnostics\LocalCouldBeConstAnalyzer.cs (1)
48if (operationContext.Operation is IAssignmentOperation assignment)
Microsoft.CodeAnalysis.VisualBasic (2)
VisualBasicExtensions.vb (2)
1435''' conversion is applied before the operator is applied to the result of this conversion and <see cref="IAssignmentOperation.Value"/>. 1457''' conversion is applied after the operator is applied, before the result is assigned to <see cref="IAssignmentOperation.Target"/>.
Microsoft.CodeAnalysis.Workspaces (7)
LValueFlowCaptureProvider.cs (1)
56if (flowCaptureReference.Parent is IAssignmentOperation assignment &&
OperationExtensions.cs (2)
19=> operation.Parent is IAssignmentOperation assignmentOperation && 122if (operation.Parent is IAssignmentOperation assignmentOperation &&
SymbolUsageAnalysis.Walker.cs (4)
30private PooledDictionary<IAssignmentOperation, PooledHashSet<(ISymbol, IOperation)>> _pendingWritesMap; 59_pendingWritesMap = PooledDictionary<IAssignmentOperation, PooledHashSet<(ISymbol, IOperation)>>.GetInstance(); 164if (operation.Parent is IAssignmentOperation assignmentOperation && 187private void ProcessPendingWritesForAssignmentTarget(IAssignmentOperation operation)