// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
ICompoundAssignmentOperation (BinaryOperatorKind.Add) (OperatorMethod: C C.op_Addition(System.Int32 c1, C c2)) (OperationKind.CompoundAssignment, Type: C) (Syntax: 'c += x')
@@ -2043,6 +2043,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a += b;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Add) (OperatorMethod: S S.op_Addition(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a += b')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2050,6 +2052,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a -= c;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Subtract) (OperatorMethod: S S.op_Subtraction(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a -= c')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2057,6 +2061,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a *= d;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Multiply) (OperatorMethod: S S.op_Multiply(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a *= d')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2064,6 +2070,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a /= e;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Divide) (OperatorMethod: S S.op_Division(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a /= e')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2071,6 +2079,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a %= f;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Remainder) (OperatorMethod: S S.op_Modulus(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a %= f')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2092,6 +2106,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a &= g;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.And) (OperatorMethod: S S.op_BitwiseAnd(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a &= g')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2099,6 +2115,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a |= h;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Or) (OperatorMethod: S S.op_BitwiseOr(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a |= h')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2106,6 +2124,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a ^= i;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.ExclusiveOr) (OperatorMethod: S S.op_ExclusiveOr(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a ^= i')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2162,6 +2182,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a += b;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Add) (OperatorMethod: S S.op_Addition(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a += b')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2169,6 +2191,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a -= c;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Subtract) (OperatorMethod: S S.op_Subtraction(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a -= c')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2176,6 +2200,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a *= d;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Multiply) (OperatorMethod: S S.op_Multiply(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a *= d')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2183,6 +2209,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a /= e;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Divide) (OperatorMethod: S S.op_Division(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a /= e')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2190,6 +2218,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a %= f;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Remainder) (OperatorMethod: S S.op_Modulus(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a %= f')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2211,6 +2245,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a &= g;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.And) (OperatorMethod: S S.op_BitwiseAnd(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a &= g')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2218,6 +2254,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a |= h;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Or) (OperatorMethod: S S.op_BitwiseOr(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a |= h')
IParameterReferenceOperation: a (OperationKind.ParameterReference, Type: S) (Syntax: 'a')
Right:
...
...
@@ -2225,6 +2263,8 @@ static void Main(S a, S b, S c, S d, S e, S f, S g, S h, S i)
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a ^= i;')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.ExclusiveOr) (OperatorMethod: S S.op_ExclusiveOr(S x, S y)) (OperationKind.CompoundAssignment, Type: S) (Syntax: 'a ^= i')
' Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
Microsoft.CodeAnalysis.VisualBasic.VisualBasicExtensions.GetConversion(conversionExpression As Microsoft.CodeAnalysis.Operations.IConversionOperation) -> Microsoft.CodeAnalysis.VisualBasic.Conversion
Microsoft.CodeAnalysis.VisualBasic.VisualBasicExtensions.GetInConversion(argument As Microsoft.CodeAnalysis.Operations.IArgumentOperation) -> Microsoft.CodeAnalysis.VisualBasic.Conversion
Microsoft.CodeAnalysis.VisualBasic.VisualBasicExtensions.GetInConversion(compoundAssignment As Microsoft.CodeAnalysis.Operations.ICompoundAssignmentOperation) -> Microsoft.CodeAnalysis.VisualBasic.Conversion
Microsoft.CodeAnalysis.VisualBasic.VisualBasicExtensions.GetOutConversion(argument As Microsoft.CodeAnalysis.Operations.IArgumentOperation) -> Microsoft.CodeAnalysis.VisualBasic.Conversion
Microsoft.CodeAnalysis.VisualBasic.VisualBasicExtensions.GetOutConversion(compoundAssignment As Microsoft.CodeAnalysis.Operations.ICompoundAssignmentOperation) -> Microsoft.CodeAnalysis.VisualBasic.Conversion
ILocalReferenceOperation: x (OperationKind.LocalReference, Type: System.Int32) (Syntax: 'x')
Right:
...
...
@@ -225,6 +227,8 @@ IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (S
IExpressionStatementOperation (OperationKind.ExpressionStatement, Type: null) (Syntax: 'a += b')
Expression:
ICompoundAssignmentOperation (BinaryOperatorKind.Add, Checked) (OperatorMethod: Function B2.op_Addition(x As B2, y As B2) As B2) (OperationKind.CompoundAssignment, Type: B2, IsImplicit) (Syntax: 'a += b')
' Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
usingSystem;
usingSystem.Collections.Immutable;
usingSystem.Diagnostics;
usingMicrosoft.CodeAnalysis.CSharp;
...
...
@@ -539,6 +540,23 @@ public override void VisitCompoundAssignment(ICompoundAssignmentOperation operat