56 references to IsValid
Microsoft.CodeAnalysis.CSharp (56)
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); 2533if (!conversion.IsValid) 2723if (!conversion.IsValid) 3792Debug.Assert(conversion.IsValid); // i.e. if it exists, then it is valid.
Binder\Binder_Expressions.cs (10)
1266if (!conversion.IsImplicit || !conversion.IsValid) 1315if (!conversion.IsImplicit || !conversion.IsValid) 2711if (!conversion.IsValid) 2817if (!conversion.IsValid) 2834bool hasErrors = !conversion.IsValid || targetType.IsStatic; 2988if (!elementConversion.IsValid) 5429Debug.Assert(conversion.IsValid); 5587if (!conversion.IsImplicit || !conversion.IsValid) 5672Debug.Assert(conv.IsValid); // i.e. if it exists, then it is valid. 7177if (!conversion.IsValid)
Binder\Binder_Invocation.cs (2)
1775if (!conversion.IsValid && defaultConstantValue is { SpecialType: SpecialType.System_Decimal or SpecialType.System_DateTime }) 1784if (!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) 2003else if (!conversion.IsValid || 2281Debug.Assert(!conversion.IsImplicit || !conversion.IsValid); 2472if (!conversion.IsImplicit || !conversion.IsValid) 2572if (!elementConversion.IsValid) 3249else if (!conversion.IsImplicit || !conversion.IsValid)
Binder\Binder.cs (1)
665if (conversion.IsValid && conversion.Method is object)
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)
3034if (!conversion.IsValid)
FlowAnalysis\NullableWalker.cs (3)
8241if (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. 10467if (!conversion.IsValid) 10619if (!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 } &&