56 references to IsValid
Microsoft.CodeAnalysis.CSharp (56)
Binder\Binder.cs (1)
659if (conversion.IsValid && conversion.Method is object)
Binder\Binder_Await.cs (1)
693Debug.Assert(conversion.IsValid);
Binder\Binder_Conversions.cs (5)
116if (conversion.IsUnion && conversion.IsValid && !filterConversion(conversion.BestUnionConversionAnalysis!.SourceConversion, result)) 344Debug.Assert(source == (object)methodGroup || !conversion.IsValid); 2534if (!conversion.IsValid) 2724if (!conversion.IsValid) 3801Debug.Assert(conversion.IsValid); // i.e. if it exists, then it is valid.
Binder\Binder_Expressions.cs (10)
1263if (!conversion.IsImplicit || !conversion.IsValid) 1312if (!conversion.IsImplicit || !conversion.IsValid) 2708if (!conversion.IsValid) 2814if (!conversion.IsValid) 2831bool hasErrors = !conversion.IsValid || targetType.IsStatic; 2985if (!elementConversion.IsValid) 5414Debug.Assert(conversion.IsValid); 5571if (!conversion.IsImplicit || !conversion.IsValid) 5656Debug.Assert(conv.IsValid); // i.e. if it exists, then it is valid. 7161if (!conversion.IsValid)
Binder\Binder_Invocation.cs (2)
1750if (!conversion.IsValid && defaultConstantValue is { SpecialType: SpecialType.System_Decimal or SpecialType.System_DateTime }) 1759if (!conversion.IsValid)
Binder\Binder_Operators.cs (2)
295if (!rightToLeftConversion.IsImplicit || !rightToLeftConversion.IsValid) 704if (!argumentConversion.IsImplicit || !argumentConversion.IsValid) // NOTE: dev10 appears to allow user-defined conversions here.
Binder\Binder_Statements.cs (7)
1378if (!elementConversionClassification.IsValid || !elementConversionClassification.IsImplicit) 1384if (elementConversionClassification.IsValid) 2002else if (!conversion.IsValid || 2280Debug.Assert(!conversion.IsImplicit || !conversion.IsValid); 2471if (!conversion.IsImplicit || !conversion.IsValid) 2571if (!elementConversion.IsValid) 3224else if (!conversion.IsImplicit || !conversion.IsValid)
Binder\ForEachLoopBinder.cs (4)
495if (!elementConversionClassification.IsValid) 556Debug.Assert(collectionConversionClassification.IsValid); 557Debug.Assert(currentConversionClassification.IsValid || 569if (currentConversionClassification.IsValid)
Binder\Semantics\Conversions\Conversion.cs (1)
615if (!conv.IsValid)
Binder\Semantics\Conversions\Conversions.cs (1)
530if (pointerConversion.IsValid)
Binder\Semantics\Operators\BinaryOperatorOverloadResolution.cs (2)
396if (Conversions.ClassifyImplicitConversionFromExpression(left, systemDelegateType, ref useSiteInfo).IsValid && 397Conversions.ClassifyImplicitConversionFromExpression(right, systemDelegateType, ref useSiteInfo).IsValid)
Binder\SwitchBinder.cs (2)
260if (!conversion.IsValid) 436if (conversion.IsValid)
BoundTree\BoundConversion.cs (4)
57if (!ConversionGroupOpt.Conversion.IsValid) 81Debug.Assert(ConversionGroupOpt.Conversion.IsValid); 163if (!ConversionGroupOpt.Conversion.IsValid) 188Debug.Assert(ConversionGroupOpt.Conversion.IsValid);
BoundTree\Constructors.cs (2)
378hasErrors || !conversion.IsValid) 406hasErrors: hasErrors || !conversion.IsValid)
Compilation\CSharpSemanticModel.cs (1)
2148conversion = convertedSwitchConversion.IsValid ? convertedSwitchConversion : Conversion.NoConversion;
FlowAnalysis\AbstractFlowPass.cs (1)
3082if (!conversion.IsValid)
FlowAnalysis\NullableWalker.cs (3)
8214if (conversion is { IsValid: true, Kind: ConversionKind.ImplicitUserDefined }) // Looking at unit-tests ImplicitConversions_07 and ImplicitConversion_Params, the behavior looks good without special handling for Union conversions here. 10440if (!conversion.IsValid) 10592if (!conversion.IsValid)
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (4)
809if (!conversion.IsValid) 837if (!conversion.IsValid) 864Debug.Assert(conversion.IsValid); 956Debug.Assert(conversion.IsValid);
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (2)
33Debug.Assert(BoundNode.GetConversion(leftConversion, leftPlaceholder).IsValid); 240Debug.Assert(BoundNode.GetConversion(leftConversion, leftPlaceholder).IsValid);
Operations\CSharpOperationFactory.cs (1)
1041else if (boundConversion.ConversionGroupOpt?.Conversion is { IsUnion: true, IsValid: true } &&