1 implementation of IConversionOperation
Microsoft.CodeAnalysis (1)
Generated\Operations.Generated.cs (1)
4719internal sealed partial class ConversionOperation : Operation, IConversionOperation
109 references to IConversionOperation
Microsoft.CodeAnalysis (13)
Generated\OperationKind.Generated.cs (1)
59/// <summary>Indicates an <see cref="IConversionOperation"/>.</summary>
Generated\Operations.Generated.cs (3)
10346public override IOperation VisitConversion(IConversionOperation operation, object? argument) 10871public virtual void VisitConversion(IConversionOperation operation) => DefaultVisit(operation); 11007public virtual TResult? VisitConversion(IConversionOperation operation, TArgument argument) => DefaultVisit(operation, argument);
Operations\ControlFlowGraphBuilder.cs (9)
1613if (operation.WhenTrue is IConversionOperation whenTrueConversion && whenTrueConversion.Operand.Kind == OperationKind.Throw) 1625else if (operation.WhenFalse is IConversionOperation whenFalseConversion && whenFalseConversion.Operand.Kind == OperationKind.Throw) 2906var conversion = (IConversionOperation)condition; 3027var conversion = operation.WhenNull as IConversionOperation; 6818Debug.Assert(interpolation.FormatString is ILiteralOperation or IConversionOperation { Operand: ILiteralOperation }); 6831Debug.Assert(interpolatedStringText.Text is ILiteralOperation or IConversionOperation { Operand: ILiteralOperation }); 7184public override IOperation VisitConversion(IConversionOperation operation, int? captureIdForResult)
Microsoft.CodeAnalysis.CodeStyle (8)
AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.BlockAnalyzer.cs (2)
648var conversion = (IConversionOperation)assignmentValue;
AbstractSimplifyInterpolationHelpers.cs (1)
66case IConversionOperation { IsImplicit: true } conversion:
AbstractUseThrowExpressionDiagnosticAnalyzer.cs (1)
245if (operation is IConversionOperation conversion && conversion.IsImplicit)
HashCodeAnalyzer.cs (1)
250if (value is IConversionOperation conversion)
OperationExtensions.cs (2)
382while (operation is IConversionOperation conversionOperation) 453=> value is IConversionOperation conversion && conversion.IsImplicit
SymbolUsageAnalysis.Walker.cs (1)
412currentOperation = ((IConversionOperation)currentOperation).Operand;
Microsoft.CodeAnalysis.CodeStyle.Fixes (2)
AbstractUseConditionalExpressionCodeFixProvider.cs (1)
179if (value is IConversionOperation conversion &&
SyntaxGeneratorExtensions_Negate.cs (1)
404return operation is IConversionOperation conversion && conversion.IsImplicit
Microsoft.CodeAnalysis.CSharp (6)
CSharpExtensions.cs (5)
778/// Gets the underlying <see cref="Conversion"/> information from this <see cref="IConversionOperation"/>. This 779/// <see cref="IConversionOperation"/> must have been created from CSharp code. 783/// <exception cref="InvalidCastException">If the <see cref="IConversionOperation"/> was not created from CSharp code.</exception> 784public static Conversion GetConversion(this IConversionOperation conversionExpression) 798nameof(IConversionOperation)),
Operations\CSharpOperationFactory.cs (1)
1133private IConversionOperation CreateBoundAsOperatorOperation(BoundAsOperator boundAsOperator)
Microsoft.CodeAnalysis.CSharp.CodeStyle (16)
AnalyzedPattern.cs (2)
139var leftConv = (leftTarget as IConversionOperation)?.Conversion; 140var rightConv = (rightTarget as IConversionOperation)?.Conversion;
CastSimplifier.cs (13)
92Parent.Parent: IConversionOperation { Type.SpecialType: SpecialType.System_Object } conversionOperation 100if (conversionOperation.Parent is IConversionOperation { Type: { } parentConversionType } && 197if (originalOperation is IConversionOperation originalConversionOperation) 214private static bool CastRemovalCouldCauseSignExtensionWarning(ExpressionSyntax castSyntax, IConversionOperation conversionOperation) 271SemanticModel originalSemanticModel, IConversionOperation originalConversionOperation, 366if (originalConversionOperation.Parent is IConversionOperation { Conversion.IsUserDefined: true } originalParentConversion && 587private static bool IsMultipleImplicitNullableConversion(IConversionOperation originalConversionOperation) 599if (originalConversionOperation.Parent is not IConversionOperation outerOriginalConversionOperation) 610ExpressionSyntax castNode, IConversionOperation originalConversionOperation, 652if (rewrittenOperation.Parent is not IConversionOperation rewrittenBitwiseNotConversionOperation) 694if (originalSemanticModel.GetOperation(castExpression, cancellationToken) is not IConversionOperation conversionOperation) 741if (rewrittenConditionalOperation.Parent is IConversionOperation conditionalParentConversion && 793if (operation is not IConversionOperation conversionOperation)
CSharpUsePatternCombinatorsAnalyzer.cs (1)
162return operation is IConversionOperation op
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (2)
ConvertToRecordHelpers.cs (1)
580Value: IConversionOperation
UseUtf8StringLiteralCodeFixProvider.cs (1)
67var isConvertedToReadOnlySpan = arrayOp.Parent is IConversionOperation conversion &&
Microsoft.CodeAnalysis.CSharp.Features (6)
AnalyzedPattern.cs (2)
139var leftConv = (leftTarget as IConversionOperation)?.Conversion; 140var rightConv = (rightTarget as IConversionOperation)?.Conversion;
ConvertLinq\CSharpConvertLinqQueryToForEachProvider.cs (1)
919if (operation is IConversionOperation conversion && conversion.IsImplicit)
ConvertToRecordHelpers.cs (1)
580Value: IConversionOperation
CSharpUsePatternCombinatorsAnalyzer.cs (1)
162return operation is IConversionOperation op
UseUtf8StringLiteralCodeFixProvider.cs (1)
67var isConvertedToReadOnlySpan = arrayOp.Parent is IConversionOperation conversion &&
Microsoft.CodeAnalysis.CSharp.IOperation.UnitTests (6)
IOperation\IOperationTests_IArgument.cs (2)
4084var conversion = operation.Descendants().OfType<IConversionOperation>().Single();
IOperation\IOperationTests_IConversionExpression.cs (4)
380return (IConversionOperation)((ICoalesceOperation)initializer).WhenNull; 5248return ((IConversionOperation)operation).Operand; 5256public Func<IOperation, IConversionOperation> OperationSelector { get; set; } 5324case IConversionOperation conv:
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (1)
Semantics\DelegateTypeTests.cs (1)
11418var value = ((IConversionOperation)operation.Initializer!.Value).Operand;
Microsoft.CodeAnalysis.CSharp.Test.Utilities (1)
CompilationTestUtils.cs (1)
376if (iop is { Parent: IConversionOperation parentConversion })
Microsoft.CodeAnalysis.CSharp.Workspaces (13)
CastSimplifier.cs (13)
92Parent.Parent: IConversionOperation { Type.SpecialType: SpecialType.System_Object } conversionOperation 100if (conversionOperation.Parent is IConversionOperation { Type: { } parentConversionType } && 197if (originalOperation is IConversionOperation originalConversionOperation) 214private static bool CastRemovalCouldCauseSignExtensionWarning(ExpressionSyntax castSyntax, IConversionOperation conversionOperation) 271SemanticModel originalSemanticModel, IConversionOperation originalConversionOperation, 366if (originalConversionOperation.Parent is IConversionOperation { Conversion.IsUserDefined: true } originalParentConversion && 587private static bool IsMultipleImplicitNullableConversion(IConversionOperation originalConversionOperation) 599if (originalConversionOperation.Parent is not IConversionOperation outerOriginalConversionOperation) 610ExpressionSyntax castNode, IConversionOperation originalConversionOperation, 652if (rewrittenOperation.Parent is not IConversionOperation rewrittenBitwiseNotConversionOperation) 694if (originalSemanticModel.GetOperation(castExpression, cancellationToken) is not IConversionOperation conversionOperation) 741if (rewrittenConditionalOperation.Parent is IConversionOperation conditionalParentConversion && 793if (operation is not IConversionOperation conversionOperation)
Microsoft.CodeAnalysis.Features (9)
AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.BlockAnalyzer.cs (2)
648var conversion = (IConversionOperation)assignmentValue;
AbstractSimplifyInterpolationHelpers.cs (1)
66case IConversionOperation { IsImplicit: true } conversion:
AbstractUseConditionalExpressionCodeFixProvider.cs (1)
179if (value is IConversionOperation conversion &&
AbstractUseThrowExpressionDiagnosticAnalyzer.cs (1)
245if (operation is IConversionOperation conversion && conversion.IsImplicit)
ConvertForEachToFor\AbstractConvertForEachToForCodeRefactoringProvider.cs (1)
389return (collection is IConversionOperation conversion && conversion.IsImplicit)
ConvertIfToSwitch\AbstractConvertIfToSwitchCodeRefactoringProvider.Analyzer.cs (1)
437return operation is IConversionOperation op
HashCodeAnalyzer.cs (1)
250if (value is IConversionOperation conversion)
InitializeParameter\AbstractInitializeMemberFromParameterCodeRefactoringProviderMemberCreation.cs (1)
659Value: IConversionOperation { Operand: ITupleOperation valueTupleTemp },
Microsoft.CodeAnalysis.Test.Utilities (13)
Compilation\OperationTreeVerifier.cs (4)
1237public override void VisitConversion(IConversionOperation operation) 1239LogString(nameof(IConversionOperation)); 1875Assert.Equal(OperationKind.Literal, ((IConversionOperation)operation.Text).Operand.Kind); 1891Assert.Equal(OperationKind.Literal, ((IConversionOperation)operation.FormatString).Operand.Kind);
Compilation\TestOperationVisitor.cs (3)
820public override void VisitConversion(IConversionOperation operation) 1274Assert.Equal(OperationKind.Literal, ((IConversionOperation)operation.Text).Operand.Kind); 1292Assert.Equal(OperationKind.Literal, ((IConversionOperation)operation.FormatString).Operand.Kind);
Diagnostics\BoxingOperationAnalyzer.cs (2)
47IConversionOperation conversion = (IConversionOperation)operation;
Diagnostics\CouldHaveMoreSpecificTypeAnalyzer.cs (2)
283IConversionOperation conversion = (IConversionOperation)value;
Diagnostics\OperationTestAnalyzer.cs (2)
1894var conversion = (IConversionOperation)operationContext.Operation;
Microsoft.CodeAnalysis.VisualBasic (4)
VisualBasicExtensions.vb (4)
1381''' Gets the underlying <see cref="Conversion"/> information from an <see cref="IConversionOperation"/> that was created from Visual Basic code. 1385''' <exception cref="InvalidCastException">If the <see cref="IConversionOperation"/> was not created from Visual Basic code.</exception> 1387Public Function GetConversion(conversionExpression As IConversionOperation) As Conversion 1392NameOf(IConversionOperation)),
Microsoft.CodeAnalysis.Workspaces (4)
OperationExtensions.cs (2)
382while (operation is IConversionOperation conversionOperation) 453=> value is IConversionOperation conversion && conversion.IsImplicit
SymbolUsageAnalysis.Walker.cs (1)
412currentOperation = ((IConversionOperation)currentOperation).Operand;
SyntaxGeneratorExtensions_Negate.cs (1)
404return operation is IConversionOperation conversion && conversion.IsImplicit
Roslyn.Compilers.VisualBasic.IOperation.UnitTests (5)
IOperation\IOperationTests_IConversionExpression.vb (5)
2598Function(operation As IOperation) As IConversionOperation 2601Return DirectCast(initializerValue, IInvalidOperation).ChildOperations.Cast(Of IConversionOperation).Single() 3348Return DirectCast(conv, IConversionOperation).Operand 3354Private ReadOnly _operationSelector As Func(Of IOperation, IConversionOperation) 3360Public Sub New(Optional operationSelector As Func(Of IOperation, IConversionOperation) = Nothing,