63 references to ClassifyConversion
Microsoft.CodeAnalysis.CSharp.CodeStyle (4)
CastSimplifier.cs (1)
459
originalSemanticModel.Compilation.
ClassifyConversion
(castedExpressionType, isType).Exists)
CSharpRemoveUnnecessaryLambdaExpressionDiagnosticAnalyzer.cs (1)
252
var conversion = compilation.
ClassifyConversion
(type1, type2);
SpeculationAnalyzer.cs (2)
820
=> compilation.
ClassifyConversion
(sourceType, targetType).IsReference;
826
=> model.Compilation.
ClassifyConversion
(originalType, targetType);
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (3)
ConvertSwitchStatementToExpressionCodeFixProvider.Rewriter.cs (1)
197
var conversion = _semanticModel.Compilation.
ClassifyConversion
(typeInfo.Type, typeInfo.ConvertedType);
CSharpAddYieldCodeFixProvider.cs (1)
157
if (!model.Compilation.
ClassifyConversion
(typeArgument, returnExpressionType).Exists)
CSharpTypeInferenceService.TypeInferrer.cs (1)
602
invocationTypes.Any(t => Compilation.
ClassifyConversion
(m.ReturnType, t).IsImplicit)).ToList();
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (41)
CodeGen\CodeGenTupleTest.cs (41)
18874
Assert.Equal(ConversionKind.Identity, comp.
ClassifyConversion
(int_string1, int_string1).Kind);
18875
Assert.Equal(ConversionKind.Identity, comp.
ClassifyConversion
(int_string1, int_string2).Kind);
18876
Assert.Equal(ConversionKind.Identity, comp.
ClassifyConversion
(int_string1, int_stringNamed).Kind);
18877
Assert.Equal(ConversionKind.Identity, comp.
ClassifyConversion
(int_string2, int_string1).Kind);
18878
Assert.Equal(ConversionKind.Identity, comp.
ClassifyConversion
(int_stringNamed, int_string1).Kind);
18896
Assert.Equal(ConversionKind.NoConversion, comp.
ClassifyConversion
(int_int, int_int_int).Kind);
18897
Assert.Equal(ConversionKind.NoConversion, comp.
ClassifyConversion
(int_int, string_string).Kind);
18898
Assert.Equal(ConversionKind.NoConversion, comp.
ClassifyConversion
(int_int1, string_string).Kind);
18899
Assert.Equal(ConversionKind.NoConversion, comp.
ClassifyConversion
(int_int1, int_int_int).Kind);
18900
Assert.Equal(ConversionKind.NoConversion, comp.
ClassifyConversion
(string_string, int_int1).Kind);
18901
Assert.Equal(ConversionKind.NoConversion, comp.
ClassifyConversion
(int_int_int, int_int1).Kind);
18937
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string1, int_object2).Kind);
18938
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_object1).Kind);
18939
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_object2).Kind);
18941
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object2, int_string1).Kind);
18942
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object1, int_string2).Kind);
18943
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object2, int_string2).Kind);
18962
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string1, int_string2).Kind);
18963
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_string1).Kind);
18964
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string1, int_object).Kind);
18965
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_object).Kind);
18967
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object, int_string1).Kind);
18968
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object, int_string2).Kind);
18987
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string1, int_string2).Kind);
18988
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_string1).Kind);
18989
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string1, int_object).Kind);
18990
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_object).Kind);
18992
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object, int_string1).Kind);
18993
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object, int_string2).Kind);
19013
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string1, int_string2).Kind);
19014
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_string1).Kind);
19015
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string1, int_object).Kind);
19016
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_object).Kind);
19018
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object, int_string1).Kind);
19019
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object, int_string2).Kind);
19040
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string1, int_string2).Kind);
19041
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_string1).Kind);
19042
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string1, int_object).Kind);
19043
Assert.Equal(ConversionKind.ImplicitTuple, comp.
ClassifyConversion
(int_string2, int_object).Kind);
19045
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object, int_string1).Kind);
19046
Assert.Equal(ConversionKind.ExplicitTuple, comp.
ClassifyConversion
(int_object, int_string2).Kind);
Microsoft.CodeAnalysis.CSharp.Features (8)
ConvertSwitchStatementToExpressionCodeFixProvider.Rewriter.cs (1)
197
var conversion = _semanticModel.Compilation.
ClassifyConversion
(typeInfo.Type, typeInfo.ConvertedType);
CSharpAddYieldCodeFixProvider.cs (1)
157
if (!model.Compilation.
ClassifyConversion
(typeArgument, returnExpressionType).Exists)
CSharpRemoveUnnecessaryLambdaExpressionDiagnosticAnalyzer.cs (1)
252
var conversion = compilation.
ClassifyConversion
(type1, type2);
GenerateConstructor\CSharpGenerateConstructorService.cs (1)
183
=> compilation.
ClassifyConversion
(sourceType, targetType).IsImplicit;
GenerateMember\GenerateParameterizedMember\CSharpGenerateParameterizedMemberService.cs (1)
150
var conversion = compilation.
ClassifyConversion
(sourceType, targetType);
GenerateType\CSharpGenerateTypeService.cs (1)
565
=> compilation.
ClassifyConversion
(sourceType, targetType).IsImplicit;
InitializeParameter\InitializeParameterHelpers.cs (1)
45
=> compilation.
ClassifyConversion
(source: source, destination: destination).IsImplicit;
UseNamedArguments\CSharpUseNamedArgumentsCodeRefactoringProvider.cs (1)
47
var conversion = semanticModel.Compilation.
ClassifyConversion
(argType, parameters[0].Type);
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (1)
Semantics\FunctionPointerTests.cs (1)
196
var classifiedConversion = comp.
ClassifyConversion
(typeInfo.Type, typeInfo.ConvertedType!);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (2)
Compilation\GetSemanticInfoTests.cs (2)
648
var conversion = info.Type != null && info.ConvertedType != null ? model.Compilation.
ClassifyConversion
(info.Type, info.ConvertedType) : Conversion.NoConversion;
863
var act2 = semanticModel.Compilation.
ClassifyConversion
(info.Type, info.ConvertedType);
Microsoft.CodeAnalysis.CSharp.Workspaces (4)
CastSimplifier.cs (1)
459
originalSemanticModel.Compilation.
ClassifyConversion
(castedExpressionType, isType).Exists)
CSharpTypeInferenceService.TypeInferrer.cs (1)
602
invocationTypes.Any(t => Compilation.
ClassifyConversion
(m.ReturnType, t).IsImplicit)).ToList();
SpeculationAnalyzer.cs (2)
820
=> compilation.
ClassifyConversion
(sourceType, targetType).IsReference;
826
=> model.Compilation.
ClassifyConversion
(originalType, targetType);