3 writes to Candidate
Microsoft.CodeAnalysis.VisualBasic (3)
Semantics\OverloadResolution.vb (3)
763Me.Candidate = candidate 768Me.Candidate = candidate 5296candidate.Candidate = candidate.Candidate.Construct(typeArguments)
151 references to Candidate
Microsoft.CodeAnalysis.VisualBasic (151)
Binding\Binder_Attributes.vb (1)
318methodSym = DirectCast(methodResult.Candidate.UnderlyingSymbol, MethodSymbol)
Binding\Binder_Delegates.vb (3)
636Dim targetMethodSymbol = DirectCast(analysisResult.Candidate.UnderlyingSymbol, MethodSymbol) 710analysisResult.Candidate.UnderlyingSymbol)) 785Dim bestCandidate As OverloadResolution.Candidate = bestResult.Candidate
Binding\Binder_Invocation.vb (10)
833Dim candidate = bestResult.Candidate 838ReportDiagnostic(diagnostics, target, GetInaccessibleErrorInfo(bestResult.Candidate.UnderlyingSymbol)) 1378singleCandidate = singleCandidateAnalysisResult.Candidate 1994Dim candidate As OverloadResolution.Candidate = candidateAnalysisResult.Candidate 2638Dim paramCount As Integer = candidate.Candidate.ParameterCount 2679paramIndex = candidate.Candidate.ParameterCount - 1) Then 2691Dim candidateIsAProperty As Boolean = (candidate.Candidate.UnderlyingSymbol.Kind = SymbolKind.Property) 2695Dim param As ParameterSymbol = candidate.Candidate.Parameters(paramIndex) 2702If candidate.IsExpandedParamArrayForm AndAlso paramIndex = candidate.Candidate.ParameterCount - 1 Then 2726If argument IsNot Nothing AndAlso paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso
Binding\Binder_ObjectInitializer.vb (3)
473ReportDiagnosticsIfObsoleteOrNotSupported(diagnostics, methodResult.Candidate.UnderlyingSymbol, node) 495ImmutableArray.Create(Of Symbol)(methodResult.Candidate.UnderlyingSymbol), 499Dim constructorSymbol As MethodSymbol = DirectCast(methodResult.Candidate.UnderlyingSymbol, MethodSymbol)
Binding\Binder_Operators.vb (8)
302userDefinedOperator.BestResult.Value.Candidate, 605DirectCast(bestCandidate.Candidate.UnderlyingSymbol, MethodSymbol)), 613If bestCandidate.Candidate.IsLifted Then 680Dim bitwiseCandidate As OverloadResolution.Candidate = bitwiseAnalysis.Candidate 732Dim checkCandidate As OverloadResolution.Candidate = leftCheckOperator.BestResult.Value.Candidate 1166userDefinedOperator.BestResult.Value.Candidate, 1256DirectCast(bestCandidate.Candidate.UnderlyingSymbol, MethodSymbol)), 1264If bestCandidate.Candidate.IsLifted Then
Binding\Binder_Query.vb (2)
1993Dim method = DirectCast(results.BestResult.Value.Candidate.UnderlyingSymbol, MethodSymbol) 2067Dim method = DirectCast(results.BestResult.Value.Candidate.UnderlyingSymbol, MethodSymbol)
Binding\Binder_Statements.vb (1)
3295Dim bestCandidate As OverloadResolution.Candidate = userDefinedOperator.BestResult.Value.Candidate
Compilation\MethodResolutionResult.vb (1)
57Return DirectCast(_candidate.Candidate.UnderlyingSymbol, TMember)
Semantics\Conversions.vb (1)
1508If results.BestResult.Value.Candidate.IsLifted Then
Semantics\OverloadResolution.vb (121)
1312Dim priorityInfo As (Source As NamedTypeSymbol, Priority As Integer) = current.Candidate.GetOverloadResolutionPriorityInfo() 1395If existingCandidate.Candidate Is newCandidate.Candidate Then 1435Dim operatorResolution As Boolean = newCandidate.Candidate.IsOperator 1437Debug.Assert(newCandidate.Candidate.ParameterCount >= argumentCount OrElse newCandidate.IsExpandedParamArrayForm) 1456Debug.Assert(existingCandidate.Candidate.ParameterCount >= argumentCount OrElse existingCandidate.IsExpandedParamArrayForm) 1461(existingCandidate.Candidate.IsExtensionMethod OrElse newCandidate.Candidate.IsExtensionMethod) Then 1477If existingCandidate.Candidate.ParameterCount <> newCandidate.Candidate.ParameterCount Then 1482Debug.Assert(argumentCount = existingCandidate.Candidate.ParameterCount) 1526Not (existingCandidate.Candidate.IsExtensionMethod OrElse newCandidate.Candidate.IsExtensionMethod) Then 1532If (Not signatureMatch OrElse existingCandidate.Candidate.IsExtensionMethod OrElse newCandidate.Candidate.IsExtensionMethod) AndAlso 1954Dim leftReturnsVoid As Boolean = left.Candidate.ReturnType.IsVoidType() 1955Dim rightReturnsVoid As Boolean = right.Candidate.ReturnType.IsVoidType() 2172If left.Candidate.ParameterCount <> right.Candidate.ParameterCount Then 2175For k As Integer = 0 To left.Candidate.ParameterCount - 1 Step 1 2177Dim leftType As TypeSymbol = left.Candidate.Parameters(k).Type 2178Dim rightType As TypeSymbol = right.Candidate.Parameters(k).Type 2568right.Candidate Is left.Candidate Then 2714Debug.Assert(current.Candidate.IsOperator) 2717Not current.Candidate.IsLifted AndAlso 2721Debug.Assert(contender.Candidate.IsOperator) 2724contender.Candidate.IsLifted AndAlso 2725current.Candidate.UnderlyingSymbol Is contender.Candidate.UnderlyingSymbol Then 2745Debug.Assert(current.Candidate.IsOperator) 2748Not current.Candidate.IsLifted AndAlso 2752Debug.Assert(contender.Candidate.IsOperator) 2755contender.Candidate.IsLifted AndAlso 2756current.Candidate.UnderlyingSymbol Is contender.Candidate.UnderlyingSymbol Then 2766If IsUnwrappingNullable(conv.Key, arguments(j).Type, current.Candidate.Parameters(j).Type) Then 2774ElseIf IsUnwrappingNullable(conv.Value.ReturnType, current.Candidate.Parameters(j).Type, useSiteInfo) Then 2828If (current.RequiresNarrowingNotFromObject OrElse current.Candidate.IsExtensionMethod) Then 2863If first.Candidate.UnderlyingSymbol.Equals(second.Candidate.UnderlyingSymbol) Then 2926Not current.Candidate.IsExtensionMethod Then 3044parameterToArgumentMap = ArrayBuilder(Of Integer).GetInstance(candidate.Candidate.ParameterCount, -1) 3073If Not candidate.Candidate.TryGetNamedParamIndex(argumentNames(i), paramIndex) Then 3085If paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 3086candidate.Candidate.Parameters(paramIndex).IsParamArray Then 3103If paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 3104candidate.Candidate.Parameters(paramIndex).IsParamArray Then 3115paramIndex = candidate.Candidate.ParameterCount - 1) Then 3140If Not candidate.Candidate.TryGetNamedParamIndex(argumentNames(i), paramIndex) Then 3152If paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 3153candidate.Candidate.Parameters(paramIndex).IsParamArray Then 3228Debug.Assert(Not candidate.Candidate.UnderlyingSymbol.IsReducedExtensionMethod() OrElse methodOrPropertyGroup.ReceiverOpt IsNot Nothing OrElse TypeOf methodOrPropertyGroup.SyntaxTree Is DummySyntaxTree) 3247If Not candidate.Candidate.IsExtensionMethod Then 3253Dim candidateSymbol = candidate.Candidate.UnderlyingSymbol 3280Dim candidateIsAProperty As Boolean = (candidate.Candidate.UnderlyingSymbol.Kind = SymbolKind.Property) 3282For paramIndex = 0 To candidate.Candidate.ParameterCount - 1 Step 1 3289Dim param As ParameterSymbol = candidate.Candidate.Parameters(paramIndex) 3293If param.IsParamArray AndAlso paramIndex = candidate.Candidate.ParameterCount - 1 Then 3511optionalArguments = New OptionalArgument(candidate.Candidate.ParameterCount - 1) {} 3756DirectCast(candidate.Candidate.UnderlyingSymbol, MethodSymbol).MethodKind = MethodKind.Constructor AndAlso 3757binder.Compilation.GetWellKnownType(WellKnownType.System_Attribute).IsBaseTypeOf(candidate.Candidate.UnderlyingSymbol.ContainingType, useSiteInfo) Then 4255If typeArguments.Length = 0 AndAlso newCandidate.Candidate.Arity > 0 Then 4289Dim operatorResolution As Boolean = newCandidate.Candidate.IsOperator 4291Debug.Assert(newCandidate.Candidate.ParameterCount >= argumentCount OrElse newCandidate.IsExpandedParamArrayForm) 4308If existingCandidate.Candidate Is newCandidate.Candidate Then 4350Debug.Assert(existingCandidate.Candidate.ParameterCount >= argumentCount OrElse existingCandidate.IsExpandedParamArrayForm) 4364If existingCandidate.Candidate.ParameterCount <> newCandidate.Candidate.ParameterCount Then 4368Debug.Assert(argumentCount = existingCandidate.Candidate.ParameterCount) 4417Not (existingCandidate.Candidate.IsExtensionMethod OrElse newCandidate.Candidate.IsExtensionMethod) Then 4424(signatureMatch AndAlso Not (existingCandidate.Candidate.IsExtensionMethod OrElse newCandidate.Candidate.IsExtensionMethod))) AndAlso 4491For j As Integer = 0 To existingCandidate.Candidate.ParameterCount - 1 Step 1 4493Dim existingType As TypeSymbol = existingCandidate.Candidate.Parameters(j).Type 4494Dim newType As TypeSymbol = newCandidate.Candidate.Parameters(j).Type 4508If existingCandidate.Candidate.IsLifted Then 4509If Not newCandidate.Candidate.IsLifted Then 4513ElseIf newCandidate.Candidate.IsLifted Then 4514Debug.Assert(Not existingCandidate.Candidate.IsLifted) 4526Dim existingSymbol As Symbol = existingCandidate.Candidate.UnderlyingSymbol 4527Dim newSymbol As Symbol = newCandidate.Candidate.UnderlyingSymbol 4543If newCandidate.Candidate.IsOverriddenBy(existingSymbol) Then 4547ElseIf existingIsApplicable AndAlso existingCandidate.Candidate.IsOverriddenBy(newSymbol) Then 4566If left.Candidate.IsExtensionMethod Then 4567If Not right.Candidate.IsExtensionMethod Then 4574If left.Candidate.PrecedenceLevel < right.Candidate.PrecedenceLevel Then 4578ElseIf left.Candidate.PrecedenceLevel > right.Candidate.PrecedenceLevel Then 4585ElseIf right.Candidate.IsExtensionMethod Then 4626If Not (left.Candidate.IsGeneric OrElse right.Candidate.IsGeneric) Then 4630If Not ((left.Candidate.UnderlyingSymbol.ContainingType.IsOrInGenericType() OrElse 4631(left.Candidate.IsExtensionMethod AndAlso Not left.Candidate.FixedTypeParameters.IsNull)) OrElse 4632(right.Candidate.UnderlyingSymbol.ContainingType.IsOrInGenericType() OrElse 4633(right.Candidate.IsExtensionMethod AndAlso Not right.Candidate.FixedTypeParameters.IsNull))) Then 4687Dim leftRefersTo As TypeParameterKind = DetectReferencesToGenericParameters(leftParamTypeForGenericityCheck, track, left.Candidate.FixedTypeParameters) 4688Dim rightRefersTo As TypeParameterKind = DetectReferencesToGenericParameters(rightParamTypeForGenericityCheck, track, right.Candidate.FixedTypeParameters) 5002If Not left.Candidate.IsExtensionMethod OrElse Not right.Candidate.IsExtensionMethod Then 5008If Not left.Candidate.ReceiverType.IsSameTypeIgnoringAll(right.Candidate.ReceiverType) Then 5013Dim leftRefersToATypeParameter = DetectReferencesToGenericParameters(left.Candidate.ReceiverTypeDefinition, 5018Dim rightRefersToATypeParameter = DetectReferencesToGenericParameters(right.Candidate.ReceiverTypeDefinition, 5141Dim leftType = left.Candidate.ReceiverType 5142Dim rightType = right.Candidate.ReceiverType 5204Dim paramType As TypeSymbol = candidate.Candidate.Parameters(paramIndex).Type 5207paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 5220Dim param As ParameterSymbol = candidate.Candidate.Parameters(paramIndex) 5234paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 5248paramIndex = candidate.Candidate.ParameterCount - 1) Then 5281If TypeArgumentInference.Infer(DirectCast(candidate.Candidate.UnderlyingSymbol, MethodSymbol), 5296candidate.Candidate = candidate.Candidate.Construct(typeArguments) 5307candidate.Candidate.TypeParameters(i), 5308DirectCast(candidate.Candidate.UnderlyingSymbol, MethodSymbol).OriginalDefinition, 5326If Not candidate.Candidate.IsExtensionMethod Then