3 writes to Candidate
Microsoft.CodeAnalysis.VisualBasic (3)
Semantics\OverloadResolution.vb (3)
763Me.Candidate = candidate 768Me.Candidate = candidate 5294candidate.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 2566right.Candidate Is left.Candidate Then 2712Debug.Assert(current.Candidate.IsOperator) 2715Not current.Candidate.IsLifted AndAlso 2719Debug.Assert(contender.Candidate.IsOperator) 2722contender.Candidate.IsLifted AndAlso 2723current.Candidate.UnderlyingSymbol Is contender.Candidate.UnderlyingSymbol Then 2743Debug.Assert(current.Candidate.IsOperator) 2746Not current.Candidate.IsLifted AndAlso 2750Debug.Assert(contender.Candidate.IsOperator) 2753contender.Candidate.IsLifted AndAlso 2754current.Candidate.UnderlyingSymbol Is contender.Candidate.UnderlyingSymbol Then 2764If IsUnwrappingNullable(conv.Key, arguments(j).Type, current.Candidate.Parameters(j).Type) Then 2772ElseIf IsUnwrappingNullable(conv.Value.ReturnType, current.Candidate.Parameters(j).Type, useSiteInfo) Then 2826If (current.RequiresNarrowingNotFromObject OrElse current.Candidate.IsExtensionMethod) Then 2861If first.Candidate.UnderlyingSymbol.Equals(second.Candidate.UnderlyingSymbol) Then 2924Not current.Candidate.IsExtensionMethod Then 3042parameterToArgumentMap = ArrayBuilder(Of Integer).GetInstance(candidate.Candidate.ParameterCount, -1) 3071If Not candidate.Candidate.TryGetNamedParamIndex(argumentNames(i), paramIndex) Then 3083If paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 3084candidate.Candidate.Parameters(paramIndex).IsParamArray Then 3101If paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 3102candidate.Candidate.Parameters(paramIndex).IsParamArray Then 3113paramIndex = candidate.Candidate.ParameterCount - 1) Then 3138If Not candidate.Candidate.TryGetNamedParamIndex(argumentNames(i), paramIndex) Then 3150If paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 3151candidate.Candidate.Parameters(paramIndex).IsParamArray Then 3226Debug.Assert(Not candidate.Candidate.UnderlyingSymbol.IsReducedExtensionMethod() OrElse methodOrPropertyGroup.ReceiverOpt IsNot Nothing OrElse TypeOf methodOrPropertyGroup.SyntaxTree Is DummySyntaxTree) 3245If Not candidate.Candidate.IsExtensionMethod Then 3251Dim candidateSymbol = candidate.Candidate.UnderlyingSymbol 3278Dim candidateIsAProperty As Boolean = (candidate.Candidate.UnderlyingSymbol.Kind = SymbolKind.Property) 3280For paramIndex = 0 To candidate.Candidate.ParameterCount - 1 Step 1 3287Dim param As ParameterSymbol = candidate.Candidate.Parameters(paramIndex) 3291If param.IsParamArray AndAlso paramIndex = candidate.Candidate.ParameterCount - 1 Then 3509optionalArguments = New OptionalArgument(candidate.Candidate.ParameterCount - 1) {} 3754DirectCast(candidate.Candidate.UnderlyingSymbol, MethodSymbol).MethodKind = MethodKind.Constructor AndAlso 3755binder.Compilation.GetWellKnownType(WellKnownType.System_Attribute).IsBaseTypeOf(candidate.Candidate.UnderlyingSymbol.ContainingType, useSiteInfo) Then 4253If typeArguments.Length = 0 AndAlso newCandidate.Candidate.Arity > 0 Then 4287Dim operatorResolution As Boolean = newCandidate.Candidate.IsOperator 4289Debug.Assert(newCandidate.Candidate.ParameterCount >= argumentCount OrElse newCandidate.IsExpandedParamArrayForm) 4306If existingCandidate.Candidate Is newCandidate.Candidate Then 4348Debug.Assert(existingCandidate.Candidate.ParameterCount >= argumentCount OrElse existingCandidate.IsExpandedParamArrayForm) 4362If existingCandidate.Candidate.ParameterCount <> newCandidate.Candidate.ParameterCount Then 4366Debug.Assert(argumentCount = existingCandidate.Candidate.ParameterCount) 4415Not (existingCandidate.Candidate.IsExtensionMethod OrElse newCandidate.Candidate.IsExtensionMethod) Then 4422(signatureMatch AndAlso Not (existingCandidate.Candidate.IsExtensionMethod OrElse newCandidate.Candidate.IsExtensionMethod))) AndAlso 4489For j As Integer = 0 To existingCandidate.Candidate.ParameterCount - 1 Step 1 4491Dim existingType As TypeSymbol = existingCandidate.Candidate.Parameters(j).Type 4492Dim newType As TypeSymbol = newCandidate.Candidate.Parameters(j).Type 4506If existingCandidate.Candidate.IsLifted Then 4507If Not newCandidate.Candidate.IsLifted Then 4511ElseIf newCandidate.Candidate.IsLifted Then 4512Debug.Assert(Not existingCandidate.Candidate.IsLifted) 4524Dim existingSymbol As Symbol = existingCandidate.Candidate.UnderlyingSymbol 4525Dim newSymbol As Symbol = newCandidate.Candidate.UnderlyingSymbol 4541If newCandidate.Candidate.IsOverriddenBy(existingSymbol) Then 4545ElseIf existingIsApplicable AndAlso existingCandidate.Candidate.IsOverriddenBy(newSymbol) Then 4564If left.Candidate.IsExtensionMethod Then 4565If Not right.Candidate.IsExtensionMethod Then 4572If left.Candidate.PrecedenceLevel < right.Candidate.PrecedenceLevel Then 4576ElseIf left.Candidate.PrecedenceLevel > right.Candidate.PrecedenceLevel Then 4583ElseIf right.Candidate.IsExtensionMethod Then 4624If Not (left.Candidate.IsGeneric OrElse right.Candidate.IsGeneric) Then 4628If Not ((left.Candidate.UnderlyingSymbol.ContainingType.IsOrInGenericType() OrElse 4629(left.Candidate.IsExtensionMethod AndAlso Not left.Candidate.FixedTypeParameters.IsNull)) OrElse 4630(right.Candidate.UnderlyingSymbol.ContainingType.IsOrInGenericType() OrElse 4631(right.Candidate.IsExtensionMethod AndAlso Not right.Candidate.FixedTypeParameters.IsNull))) Then 4685Dim leftRefersTo As TypeParameterKind = DetectReferencesToGenericParameters(leftParamTypeForGenericityCheck, track, left.Candidate.FixedTypeParameters) 4686Dim rightRefersTo As TypeParameterKind = DetectReferencesToGenericParameters(rightParamTypeForGenericityCheck, track, right.Candidate.FixedTypeParameters) 5000If Not left.Candidate.IsExtensionMethod OrElse Not right.Candidate.IsExtensionMethod Then 5006If Not left.Candidate.ReceiverType.IsSameTypeIgnoringAll(right.Candidate.ReceiverType) Then 5011Dim leftRefersToATypeParameter = DetectReferencesToGenericParameters(left.Candidate.ReceiverTypeDefinition, 5016Dim rightRefersToATypeParameter = DetectReferencesToGenericParameters(right.Candidate.ReceiverTypeDefinition, 5139Dim leftType = left.Candidate.ReceiverType 5140Dim rightType = right.Candidate.ReceiverType 5202Dim paramType As TypeSymbol = candidate.Candidate.Parameters(paramIndex).Type 5205paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 5218Dim param As ParameterSymbol = candidate.Candidate.Parameters(paramIndex) 5232paramIndex = candidate.Candidate.ParameterCount - 1 AndAlso 5246paramIndex = candidate.Candidate.ParameterCount - 1) Then 5279If TypeArgumentInference.Infer(DirectCast(candidate.Candidate.UnderlyingSymbol, MethodSymbol), 5294candidate.Candidate = candidate.Candidate.Construct(typeArguments) 5305candidate.Candidate.TypeParameters(i), 5306DirectCast(candidate.Candidate.UnderlyingSymbol, MethodSymbol).OriginalDefinition, 5324If Not candidate.Candidate.IsExtensionMethod Then