org.jetbrains.jet.lang.resolve.calls.tasks
Class ResolutionTask<D extends CallableDescriptor,F extends D>

java.lang.Object
  extended by org.jetbrains.jet.lang.resolve.calls.context.ResolutionContext<Context>
      extended by org.jetbrains.jet.lang.resolve.calls.context.CallResolutionContext<ResolutionTask<D,F>>
          extended by org.jetbrains.jet.lang.resolve.calls.tasks.ResolutionTask<D,F>

public class ResolutionTask<D extends CallableDescriptor,F extends D>
extends CallResolutionContext<ResolutionTask<D,F>>

Stores candidates for call resolution.


Nested Class Summary
static interface ResolutionTask.DescriptorCheckStrategy
           
 
Field Summary
 JetReferenceExpression reference
           
 TracingStrategy tracing
           
 
Fields inherited from class org.jetbrains.jet.lang.resolve.calls.context.CallResolutionContext
call, checkArguments, dataFlowInfoForArguments
 
Fields inherited from class org.jetbrains.jet.lang.resolve.calls.context.ResolutionContext
contextDependency, dataFlowInfo, expectedType, expressionPosition, labelResolver, resolutionResultsCache, scope, trace
 
Constructor Summary
ResolutionTask(java.util.Collection<ResolutionCandidate<D>> candidates, JetReferenceExpression reference, BasicCallResolutionContext context)
           
ResolutionTask(java.util.Collection<ResolutionCandidate<D>> candidates, JetReferenceExpression reference, BasicCallResolutionContext context, TracingStrategy tracing)
           
ResolutionTask(java.util.Collection<ResolutionCandidate<D>> candidates, JetReferenceExpression reference, TracingStrategy tracing, BindingTrace trace, JetScope scope, Call call, JetType expectedType, DataFlowInfo dataFlowInfo, ContextDependency contextDependency, CheckValueArgumentsMode checkArguments, ExpressionPosition expressionPosition, ResolutionResultsCache resolutionResultsCache, LabelResolver labelResolver, MutableDataFlowInfoForArguments dataFlowInfoForArguments)
           
 
Method Summary
protected  ResolutionTask<D,F> create(BindingTrace trace, JetScope scope, DataFlowInfo dataFlowInfo, JetType expectedType, ExpressionPosition expressionPosition, ContextDependency contextDependency, ResolutionResultsCache resolutionResultsCache, LabelResolver labelResolver)
           
 java.util.Collection<ResolutionCandidate<D>> getCandidates()
           
 java.util.Set<ResolvedCallWithTrace<F>> getResolvedCalls()
           
 boolean performAdvancedChecks(D descriptor, BindingTrace trace, TracingStrategy tracing)
           
 ResolutionTask<D,F> replaceCall(Call newCall)
           
protected  ResolutionTask<D,F> self()
           
 void setCheckingStrategy(ResolutionTask.DescriptorCheckStrategy strategy)
           
 java.lang.String toString()
           
 
Methods inherited from class org.jetbrains.jet.lang.resolve.calls.context.CallResolutionContext
toBasic
 
Methods inherited from class org.jetbrains.jet.lang.resolve.calls.context.ResolutionContext
replaceBindingTrace, replaceContextDependency, replaceDataFlowInfo, replaceExpectedType, replaceExpressionPosition, replaceResolutionResultsCache, replaceScope, replaceTraceAndCache
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

reference

public final JetReferenceExpression reference

tracing

public final TracingStrategy tracing
Constructor Detail

ResolutionTask

public ResolutionTask(@NotNull
                      java.util.Collection<ResolutionCandidate<D>> candidates,
                      @NotNull
                      JetReferenceExpression reference,
                      @NotNull
                      TracingStrategy tracing,
                      BindingTrace trace,
                      JetScope scope,
                      Call call,
                      JetType expectedType,
                      DataFlowInfo dataFlowInfo,
                      ContextDependency contextDependency,
                      CheckValueArgumentsMode checkArguments,
                      ExpressionPosition expressionPosition,
                      ResolutionResultsCache resolutionResultsCache,
                      @NotNull
                      LabelResolver labelResolver,
                      @Nullable
                      MutableDataFlowInfoForArguments dataFlowInfoForArguments)

ResolutionTask

public ResolutionTask(@NotNull
                      java.util.Collection<ResolutionCandidate<D>> candidates,
                      @NotNull
                      JetReferenceExpression reference,
                      @NotNull
                      BasicCallResolutionContext context,
                      @Nullable
                      TracingStrategy tracing)

ResolutionTask

public ResolutionTask(@NotNull
                      java.util.Collection<ResolutionCandidate<D>> candidates,
                      @NotNull
                      JetReferenceExpression reference,
                      @NotNull
                      BasicCallResolutionContext context)
Method Detail

getCandidates

@NotNull
public java.util.Collection<ResolutionCandidate<D>> getCandidates()

getResolvedCalls

@NotNull
public java.util.Set<ResolvedCallWithTrace<F>> getResolvedCalls()

setCheckingStrategy

public void setCheckingStrategy(ResolutionTask.DescriptorCheckStrategy strategy)

performAdvancedChecks

public boolean performAdvancedChecks(D descriptor,
                                     BindingTrace trace,
                                     TracingStrategy tracing)

create

protected ResolutionTask<D,F> create(@NotNull
                                     BindingTrace trace,
                                     @NotNull
                                     JetScope scope,
                                     @NotNull
                                     DataFlowInfo dataFlowInfo,
                                     @NotNull
                                     JetType expectedType,
                                     @NotNull
                                     ExpressionPosition expressionPosition,
                                     @NotNull
                                     ContextDependency contextDependency,
                                     @NotNull
                                     ResolutionResultsCache resolutionResultsCache,
                                     @NotNull
                                     LabelResolver labelResolver)
Specified by:
create in class ResolutionContext<ResolutionTask<D extends CallableDescriptor,F extends D>>

self

protected ResolutionTask<D,F> self()
Specified by:
self in class ResolutionContext<ResolutionTask<D extends CallableDescriptor,F extends D>>

replaceCall

public ResolutionTask<D,F> replaceCall(@NotNull
                                       Call newCall)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object